Lines Matching refs:device_object
106 device_pager_get_refcount(device_pager_t device_object) in device_pager_get_refcount() argument
108 return os_ref_get_count_raw(&device_object->dev_pgr_hdr_ref); in device_pager_get_refcount()
144 device_pager_t device_object; in device_pager_setup() local
148 device_object = device_object_create(); in device_pager_setup()
149 if (device_object == DEVICE_PAGER_NULL) { in device_pager_setup()
153 device_object->device_handle = device_handle; in device_pager_setup()
154 device_object->size = size; in device_pager_setup()
155 device_object->flags = flags; in device_pager_setup()
157 memory_object_create_named((memory_object_t) device_object, in device_pager_setup()
172 return (memory_object_t)device_object; in device_pager_setup()
185 device_pager_t device_object; in device_pager_populate_object() local
190 device_object = device_pager_lookup(device); in device_pager_populate_object()
191 if (device_object == DEVICE_PAGER_NULL) { in device_pager_populate_object()
196 device_object->dev_pgr_hdr.mo_control); in device_pager_populate_object()
235 device_pager_t device_object; in device_pager_lookup() local
238 device_object = (device_pager_t)mem_obj; in device_pager_lookup()
239 assert(device_pager_get_refcount(device_object) > 0); in device_pager_lookup()
240 return device_object; in device_pager_lookup()
252 device_pager_t device_object; in device_pager_init() local
263 device_object = device_pager_lookup(mem_obj); in device_pager_init()
266 device_object->dev_pgr_hdr.mo_control = control; in device_pager_init()
275 if (device_object->flags & DEVICE_PAGER_CONTIGUOUS) { in device_pager_init()
278 if (device_object->flags & DEVICE_PAGER_NOPHYSCACHE) { in device_pager_init()
282 vm_object->wimg_bits = device_object->flags & VM_WIMG_MASK; in device_pager_init()
311 device_pager_t device_object; in device_pager_data_action() local
315 device_object = device_pager_lookup(mem_obj); in device_pager_data_action()
317 if (device_object == DEVICE_PAGER_NULL) { in device_pager_data_action()
321 if (offset >= device_object->size || in device_pager_data_action()
323 end_offset > device_object->size) { in device_pager_data_action()
327 __IGNORE_WCASTALIGN(kr = device_data_action(device_object->device_handle, in device_pager_data_action()
328 (ipc_port_t) device_object, protection, offset, length)); in device_pager_data_action()
373 device_pager_t device_object; in device_pager_reference() local
375 device_object = device_pager_lookup(mem_obj); in device_pager_reference()
376 os_ref_retain_raw(&device_object->dev_pgr_hdr_ref, NULL); in device_pager_reference()
378 device_pager_t, device_object, in device_pager_reference()
379 unsigned int, device_pager_get_refcount(device_object)); in device_pager_reference()
389 device_pager_t device_object; in device_pager_deallocate() local
393 device_object = device_pager_lookup(mem_obj); in device_pager_deallocate()
396 device_pager_t, device_object, in device_pager_deallocate()
397 unsigned int, device_pager_get_refcount(device_object)); in device_pager_deallocate()
399 ref_count = os_ref_release_raw(&device_object->dev_pgr_hdr_ref, NULL); in device_pager_deallocate()
408 device_pager_t, device_object, in device_pager_deallocate()
409 unsigned int, device_pager_get_refcount(device_object)); in device_pager_deallocate()
411 assert(device_object->is_mapped == FALSE); in device_pager_deallocate()
412 if (device_object->device_handle != (device_port_t) NULL) { in device_pager_deallocate()
413 device_close(device_object->device_handle); in device_pager_deallocate()
414 device_object->device_handle = (device_port_t) NULL; in device_pager_deallocate()
416 device_control = device_object->dev_pgr_hdr.mo_control; in device_pager_deallocate()
423 device_pager_t, device_object, in device_pager_deallocate()
424 unsigned int, device_pager_get_refcount(device_object)); in device_pager_deallocate()
426 device_control = device_object->dev_pgr_hdr.mo_control; in device_pager_deallocate()
430 device_object->dev_pgr_hdr.mo_control = MEMORY_OBJECT_CONTROL_NULL; in device_pager_deallocate()
432 device_pager_lock_destroy(device_object); in device_pager_deallocate()
434 zfree(device_pager_zone, device_object); in device_pager_deallocate()
465 device_pager_t device_object; in device_pager_map() local
467 device_object = device_pager_lookup(mem_obj); in device_pager_map()
469 device_pager_lock(device_object); in device_pager_map()
470 assert(device_pager_get_refcount(device_object) > 0); in device_pager_map()
471 if (device_object->is_mapped == FALSE) { in device_pager_map()
477 device_object->is_mapped = TRUE; in device_pager_map()
480 device_pager_unlock(device_object); in device_pager_map()
489 device_pager_t device_object; in device_pager_last_unmap() local
492 device_object = device_pager_lookup(mem_obj); in device_pager_last_unmap()
494 device_pager_lock(device_object); in device_pager_last_unmap()
495 assert(device_pager_get_refcount(device_object) > 0); in device_pager_last_unmap()
496 if (device_object->is_mapped) { in device_pager_last_unmap()
497 device_object->is_mapped = FALSE; in device_pager_last_unmap()
502 device_pager_unlock(device_object); in device_pager_last_unmap()
519 device_pager_t device_object; in device_object_create() local
521 device_object = zalloc_flags(device_pager_zone, in device_object_create()
524 device_object->dev_pgr_hdr.mo_ikot = IKOT_MEMORY_OBJECT; in device_object_create()
525 device_object->dev_pgr_hdr.mo_pager_ops = &device_pager_ops; in device_object_create()
526 device_object->dev_pgr_hdr.mo_control = MEMORY_OBJECT_CONTROL_NULL; in device_object_create()
527 device_object->dev_pgr_hdr.mo_last_unmap_ctid = 0; in device_object_create()
529 device_pager_lock_init(device_object); in device_object_create()
530 os_ref_init_raw(&device_object->dev_pgr_hdr_ref, NULL); in device_object_create()
531 device_object->is_mapped = FALSE; in device_object_create()
534 device_pager_t, device_object, in device_object_create()
535 unsigned int, device_pager_get_refcount(device_object)); in device_object_create()
537 return device_object; in device_object_create()