Changeset View
Changeset View
Standalone View
Standalone View
sys/vm/vm_object.c
Show First 20 Lines • Show All 280 Lines • ▼ Show 20 Lines | vm_object_init(void) | ||||
rw_init(&kernel_object->lock, "kernel vm object"); | rw_init(&kernel_object->lock, "kernel vm object"); | ||||
_vm_object_allocate(OBJT_PHYS, atop(VM_MAX_KERNEL_ADDRESS - | _vm_object_allocate(OBJT_PHYS, atop(VM_MAX_KERNEL_ADDRESS - | ||||
VM_MIN_KERNEL_ADDRESS), OBJ_UNMANAGED, kernel_object, NULL); | VM_MIN_KERNEL_ADDRESS), OBJ_UNMANAGED, kernel_object, NULL); | ||||
#if VM_NRESERVLEVEL > 0 | #if VM_NRESERVLEVEL > 0 | ||||
kernel_object->flags |= OBJ_COLORED; | kernel_object->flags |= OBJ_COLORED; | ||||
kernel_object->pg_color = (u_short)atop(VM_MIN_KERNEL_ADDRESS); | kernel_object->pg_color = (u_short)atop(VM_MIN_KERNEL_ADDRESS); | ||||
#endif | #endif | ||||
kernel_object->un_pager.phys.ops = &default_phys_pg_ops; | |||||
/* | /* | ||||
* The lock portion of struct vm_object must be type stable due | * The lock portion of struct vm_object must be type stable due | ||||
* to vm_pageout_fallback_object_lock locking a vm object | * to vm_pageout_fallback_object_lock locking a vm object | ||||
* without holding any references to it. | * without holding any references to it. | ||||
* | * | ||||
* paging_in_progress is valid always. Lockless references to | * paging_in_progress is valid always. Lockless references to | ||||
* the objects may acquire pip and then check OBJ_DEAD. | * the objects may acquire pip and then check OBJ_DEAD. | ||||
▲ Show 20 Lines • Show All 2,552 Lines • Show Last 20 Lines |