mirror of
https://github.com/freebsd/freebsd-src
synced 2024-09-06 09:10:28 +00:00
vm_radix_init: use initializer
Several vm_radix tries are not initialized with vm_radix_init. That works, for now, since static initialization zeroes the root field anyway, but if initialization changes, these tries will fail. Add missing initializer calls. Reviewed by: alc, kib, markj Differential Revision: https://reviews.freebsd.org/D40971
This commit is contained in:
parent
5d4f8df451
commit
3e04ae433f
|
@ -1993,6 +1993,7 @@ pmap_bootstrap(vm_paddr_t *firstaddr)
|
|||
kernel_pmap->pm_ucr3 = PMAP_NO_CR3;
|
||||
TAILQ_INIT(&kernel_pmap->pm_pvchunk);
|
||||
kernel_pmap->pm_stats.resident_count = res;
|
||||
vm_radix_init(&kernel_pmap->pm_root);
|
||||
kernel_pmap->pm_flags = pmap_flags;
|
||||
|
||||
/*
|
||||
|
|
|
@ -1291,6 +1291,7 @@ pmap_bootstrap(vm_paddr_t kernstart, vm_size_t kernlen)
|
|||
PMAP_LOCK_INIT(kernel_pmap);
|
||||
kernel_pmap->pm_l0_paddr =
|
||||
pmap_early_vtophys((vm_offset_t)kernel_pmap_store.pm_l0);
|
||||
vm_radix_init(&kernel_pmap->pm_root);
|
||||
kernel_pmap->pm_cookie = COOKIE_FROM(-1, INT_MIN);
|
||||
kernel_pmap->pm_stage = PM_STAGE1;
|
||||
kernel_pmap->pm_levels = 4;
|
||||
|
|
|
@ -659,6 +659,7 @@ __CONCAT(PMTYPE, bootstrap)(vm_paddr_t firstaddr)
|
|||
CPU_FILL(&kernel_pmap->pm_active); /* don't allow deactivation */
|
||||
kernel_pmap->pm_stats.resident_count = res;
|
||||
TAILQ_INIT(&kernel_pmap->pm_pvchunk);
|
||||
vm_radix_init(&kernel_pmap->pm_root);
|
||||
|
||||
/*
|
||||
* Initialize the global pv list lock.
|
||||
|
|
|
@ -646,6 +646,7 @@ pmap_bootstrap(vm_offset_t l1pt, vm_paddr_t kernstart, vm_size_t kernlen)
|
|||
/* Set this early so we can use the pagetable walking functions */
|
||||
kernel_pmap_store.pm_top = (pd_entry_t *)l1pt;
|
||||
PMAP_LOCK_INIT(kernel_pmap);
|
||||
vm_radix_init(&kernel_pmap->pm_root);
|
||||
|
||||
rw_init(&pvh_global_lock, "pmap pv global");
|
||||
|
||||
|
|
|
@ -286,6 +286,7 @@ vm_object_init(void)
|
|||
mtx_init(&vm_object_list_mtx, "vm object_list", NULL, MTX_DEF);
|
||||
|
||||
rw_init(&kernel_object->lock, "kernel vm object");
|
||||
vm_radix_init(&kernel_object->rtree);
|
||||
_vm_object_allocate(OBJT_PHYS, atop(VM_MAX_KERNEL_ADDRESS -
|
||||
VM_MIN_KERNEL_ADDRESS), OBJ_UNMANAGED, kernel_object, NULL);
|
||||
#if VM_NRESERVLEVEL > 0
|
||||
|
|
Loading…
Reference in a new issue