Lines Matching defs:udv
113 struct uvm_device *udv, *lcv;
242 udv = kmem_alloc(sizeof(*udv), KM_SLEEP);
243 uvm_obj_init(&udv->u_obj, &uvm_deviceops, true, 1);
264 uvm_obj_destroy(&udv->u_obj, true);
265 kmem_free(udv, sizeof(*udv));
274 udv->u_flags = 0;
275 udv->u_device = device;
276 LIST_INSERT_HEAD(&udv_list, udv, u_list);
278 return &udv->u_obj;
288 * udv being released or locked out here.
316 struct uvm_device *udv = (struct uvm_device *)uobj;
337 if (udv->u_flags & UVM_DEVICE_HOLD) {
338 udv->u_flags |= UVM_DEVICE_WANTED;
340 UVM_UNLOCK_AND_WAIT(udv, &udv_lock, false, "udv_detach",0);
348 LIST_REMOVE(udv, u_list);
349 if (udv->u_flags & UVM_DEVICE_WANTED)
350 wakeup(udv);
355 kmem_free(udv, sizeof(*udv));
383 struct uvm_device *udv = (struct uvm_device *)uobj;
410 device = udv->u_device;
418 * now we must determine the offset in udv to use and the VA to
424 /* udv offset = (offset from start of entry) + entry's offset */