Lines Matching refs:uobj
200 #define UVM_ET_ISCOMPATIBLE(ent, type, uobj, meflags, \ argument
204 (ent)->object.uvm_obj == (uobj) && \
1070 struct uvm_object *uobj, voff_t uoffset, vsize_t align, uvm_flag_t flags) in uvm_map() argument
1093 error = uvm_map_prepare(map, *startp, size, uobj, uoffset, align, in uvm_map()
1120 struct uvm_object *uobj, voff_t uoffset, vsize_t align, uvm_flag_t flags, in uvm_map_prepare() argument
1130 UVMHIST_LOG(maphist, " uobj/offset %#jx/%jd", (uintptr_t)uobj, in uvm_map_prepare()
1186 uobj, uoffset, align, flags); in uvm_map_prepare()
1246 if (uobj == NULL) { in uvm_map_prepare()
1250 KASSERT(UVM_OBJ_IS_KERN_OBJECT(uobj)); in uvm_map_prepare()
1259 args->uma_uobj = uobj; in uvm_map_prepare()
1290 struct uvm_object *uobj = args->uma_uobj; in uvm_map_enter() local
1301 UVMHIST_LOG(maphist, " uobj/offset %#jx/%jd", (uintptr_t)uobj, in uvm_map_enter()
1309 if (uobj) in uvm_map_enter()
1353 UVM_ET_ISCOMPATIBLE(prev_entry, newetype, uobj, 0, in uvm_map_enter()
1356 if (uobj && prev_entry->offset + in uvm_map_enter()
1390 if (uobj && uobj->pgops->pgo_detach) in uvm_map_enter()
1391 uobj->pgops->pgo_detach(uobj); in uvm_map_enter()
1410 UVM_ET_ISCOMPATIBLE(prev_entry->next, newetype, uobj, 0, in uvm_map_enter()
1413 if (uobj && prev_entry->next->offset != uoffset + size) in uvm_map_enter()
1511 if (uobj && uobj->pgops->pgo_detach) in uvm_map_enter()
1512 uobj->pgops->pgo_detach(uobj); in uvm_map_enter()
1529 if (uobj) in uvm_map_enter()
1562 new_entry->object.uvm_obj = uobj; in uvm_map_enter()
1841 struct uvm_object *uobj, voff_t uoffset, vsize_t align, int flags, in uvm_findspace_invariants() argument
1857 length, uobj, (unsigned long long)uoffset, align, in uvm_findspace_invariants()
1880 vaddr_t *result /* OUT */, struct uvm_object *uobj, voff_t uoffset, in uvm_map_findspace() argument
1884 uvm_findspace_invariants(map, orig_hint, length, uobj, uoffset, align,\ in uvm_map_findspace()
1895 (uintptr_t)uobj, uoffset, align, 0); in uvm_map_findspace()
3248 struct uvm_object *uobj = in uvm_map_protect() local
3251 if (UVM_OBJ_IS_VNODE(uobj) && in uvm_map_protect()
3253 vn_markexec((struct vnode *) uobj); in uvm_map_protect()
3429 struct uvm_object * const uobj = entry->object.uvm_obj; in uvm_map_willneed() local
3441 if (UVM_ET_ISOBJ(entry) && amap == NULL && uobj != NULL) { in uvm_map_willneed()
3453 uvm_readahead(uobj, offset, size); in uvm_map_willneed()
3967 struct uvm_object *uobj; in uvm_map_clean() local
4016 uobj = current->object.uvm_obj; /* lower layer */ in uvm_map_clean()
4108 if (uobj != NULL) { in uvm_map_clean()
4109 rw_enter(uobj->vmobjlock, RW_WRITER); in uvm_map_clean()
4110 if (uobj->pgops->pgo_put != NULL) in uvm_map_clean()
4111 error = (uobj->pgops->pgo_put)(uobj, uoff, in uvm_map_clean()
4710 struct uvm_object *uobj; in uvm_mapent_trymerge() local
4725 uobj = entry->object.uvm_obj; in uvm_mapent_trymerge()
4737 uobj, entry->flags, entry->protection, in uvm_mapent_trymerge()
4740 (uobj == NULL || entry->offset + size == next->offset)) { in uvm_mapent_trymerge()
4750 if (uobj) { in uvm_mapent_trymerge()
4751 if (uobj->pgops->pgo_detach) { in uvm_mapent_trymerge()
4752 uobj->pgops->pgo_detach(uobj); in uvm_mapent_trymerge()
4776 uobj, entry->flags, entry->protection, in uvm_mapent_trymerge()
4779 (uobj == NULL || in uvm_mapent_trymerge()
4790 if (uobj) { in uvm_mapent_trymerge()
4791 if (uobj->pgops->pgo_detach) { in uvm_mapent_trymerge()
4792 uobj->pgops->pgo_detach(uobj); in uvm_mapent_trymerge()
4937 #define UVM_VOADDR_SET_UOBJ(voa, uobj) \ argument
4938 UVM_VOADDR_SET_OBJECT(voa, uobj, UVM_VOADDR_TYPE_UOBJ)
5109 struct uvm_object *uobj = entry->object.uvm_obj; in uvm_voaddr_acquire() local
5111 KASSERT(uobj != NULL); in uvm_voaddr_acquire()
5112 (*uobj->pgops->pgo_reference)(uobj); in uvm_voaddr_acquire()
5113 UVM_VOADDR_SET_UOBJ(voaddr, uobj); in uvm_voaddr_acquire()
5143 struct uvm_object * const uobj = UVM_VOADDR_GET_UOBJ(voaddr); in uvm_voaddr_release() local
5145 KASSERT(uobj != NULL); in uvm_voaddr_release()
5146 KASSERT(uobj->pgops->pgo_detach != NULL); in uvm_voaddr_release()
5147 (*uobj->pgops->pgo_detach)(uobj); in uvm_voaddr_release()
5305 struct uvm_object *uobj = e->object.uvm_obj; in fill_vmentry() local
5306 KASSERT(uobj != NULL); in fill_vmentry()
5307 kve->kve_ref_count = uobj->uo_refs; in fill_vmentry()
5308 kve->kve_count = uobj->uo_npages; in fill_vmentry()
5309 if (UVM_OBJ_IS_VNODE(uobj)) { in fill_vmentry()
5311 struct vnode *vp = (struct vnode *)uobj; in fill_vmentry()
5326 } else if (UVM_OBJ_IS_KERN_OBJECT(uobj)) { in fill_vmentry()
5328 } else if (UVM_OBJ_IS_DEVICE(uobj)) { in fill_vmentry()
5330 } else if (UVM_OBJ_IS_AOBJ(uobj)) { in fill_vmentry()