Lines Matching refs:device_object
105 device_pager_get_refcount(device_pager_t device_object) in device_pager_get_refcount() argument
107 return os_ref_get_count_raw(&device_object->dev_pgr_hdr_ref); in device_pager_get_refcount()
143 device_pager_t device_object; in device_pager_setup() local
147 device_object = device_object_create(); in device_pager_setup()
148 if (device_object == DEVICE_PAGER_NULL) { in device_pager_setup()
152 device_object->device_handle = device_handle; in device_pager_setup()
153 device_object->size = size; in device_pager_setup()
154 device_object->flags = flags; in device_pager_setup()
156 memory_object_create_named((memory_object_t) device_object, in device_pager_setup()
171 return (memory_object_t)device_object; in device_pager_setup()
184 device_pager_t device_object; in device_pager_populate_object() local
189 device_object = device_pager_lookup(device); in device_pager_populate_object()
190 if (device_object == DEVICE_PAGER_NULL) { in device_pager_populate_object()
195 device_object->dev_pgr_hdr.mo_control); in device_pager_populate_object()
234 device_pager_t device_object; in device_pager_lookup() local
237 device_object = (device_pager_t)mem_obj; in device_pager_lookup()
238 assert(device_pager_get_refcount(device_object) > 0); in device_pager_lookup()
239 return device_object; in device_pager_lookup()
251 device_pager_t device_object; in device_pager_init() local
262 device_object = device_pager_lookup(mem_obj); in device_pager_init()
265 device_object->dev_pgr_hdr.mo_control = control; in device_pager_init()
274 if (device_object->flags & DEVICE_PAGER_CONTIGUOUS) { in device_pager_init()
277 if (device_object->flags & DEVICE_PAGER_NOPHYSCACHE) { in device_pager_init()
281 vm_object->wimg_bits = device_object->flags & VM_WIMG_MASK; in device_pager_init()
310 device_pager_t device_object; in device_pager_data_action() local
314 device_object = device_pager_lookup(mem_obj); in device_pager_data_action()
316 if (device_object == DEVICE_PAGER_NULL) { in device_pager_data_action()
320 if (offset >= device_object->size || in device_pager_data_action()
322 end_offset > device_object->size) { in device_pager_data_action()
326 __IGNORE_WCASTALIGN(kr = device_data_action(device_object->device_handle, in device_pager_data_action()
327 (ipc_port_t) device_object, protection, offset, length)); in device_pager_data_action()
372 device_pager_t device_object; in device_pager_reference() local
374 device_object = device_pager_lookup(mem_obj); in device_pager_reference()
375 os_ref_retain_raw(&device_object->dev_pgr_hdr_ref, NULL); in device_pager_reference()
377 device_pager_t, device_object, in device_pager_reference()
378 unsigned int, device_pager_get_refcount(device_object)); in device_pager_reference()
388 device_pager_t device_object; in device_pager_deallocate() local
392 device_object = device_pager_lookup(mem_obj); in device_pager_deallocate()
395 device_pager_t, device_object, in device_pager_deallocate()
396 unsigned int, device_pager_get_refcount(device_object)); in device_pager_deallocate()
398 ref_count = os_ref_release_raw(&device_object->dev_pgr_hdr_ref, NULL); in device_pager_deallocate()
407 device_pager_t, device_object, in device_pager_deallocate()
408 unsigned int, device_pager_get_refcount(device_object)); in device_pager_deallocate()
410 assert(device_object->is_mapped == FALSE); in device_pager_deallocate()
411 if (device_object->device_handle != (device_port_t) NULL) { in device_pager_deallocate()
412 device_close(device_object->device_handle); in device_pager_deallocate()
413 device_object->device_handle = (device_port_t) NULL; in device_pager_deallocate()
415 device_control = device_object->dev_pgr_hdr.mo_control; in device_pager_deallocate()
422 device_pager_t, device_object, in device_pager_deallocate()
423 unsigned int, device_pager_get_refcount(device_object)); in device_pager_deallocate()
425 device_control = device_object->dev_pgr_hdr.mo_control; in device_pager_deallocate()
429 device_object->dev_pgr_hdr.mo_control = MEMORY_OBJECT_CONTROL_NULL; in device_pager_deallocate()
431 device_pager_lock_destroy(device_object); in device_pager_deallocate()
433 zfree(device_pager_zone, device_object); in device_pager_deallocate()
464 device_pager_t device_object; in device_pager_map() local
466 device_object = device_pager_lookup(mem_obj); in device_pager_map()
468 device_pager_lock(device_object); in device_pager_map()
469 assert(device_pager_get_refcount(device_object) > 0); in device_pager_map()
470 if (device_object->is_mapped == FALSE) { in device_pager_map()
476 device_object->is_mapped = TRUE; in device_pager_map()
479 device_pager_unlock(device_object); in device_pager_map()
488 device_pager_t device_object; in device_pager_last_unmap() local
491 device_object = device_pager_lookup(mem_obj); in device_pager_last_unmap()
493 device_pager_lock(device_object); in device_pager_last_unmap()
494 assert(device_pager_get_refcount(device_object) > 0); in device_pager_last_unmap()
495 if (device_object->is_mapped) { in device_pager_last_unmap()
496 device_object->is_mapped = FALSE; in device_pager_last_unmap()
501 device_pager_unlock(device_object); in device_pager_last_unmap()
518 device_pager_t device_object; in device_object_create() local
520 device_object = zalloc_flags(device_pager_zone, in device_object_create()
523 device_object->dev_pgr_hdr.mo_ikot = IKOT_MEMORY_OBJECT; in device_object_create()
524 device_object->dev_pgr_hdr.mo_pager_ops = &device_pager_ops; in device_object_create()
525 device_object->dev_pgr_hdr.mo_control = MEMORY_OBJECT_CONTROL_NULL; in device_object_create()
527 device_pager_lock_init(device_object); in device_object_create()
528 os_ref_init_raw(&device_object->dev_pgr_hdr_ref, NULL); in device_object_create()
529 device_object->is_mapped = FALSE; in device_object_create()
532 device_pager_t, device_object, in device_object_create()
533 unsigned int, device_pager_get_refcount(device_object)); in device_object_create()
535 return device_object; in device_object_create()