powerpc pmap: initialize kernel pmap radix trie

Commit 2d2bcba7ba changed radix trie
implementation and made it necessary that radix tries be initialized
with vm_radix_init. @dbaio reports that in some configurations, there
is a powerpc boot panic and that this commit introduced the
problem. In powerpc/aim/mmu_radix.c, the radix trie in kernel_pmap is
initialized by zeroing all its fields.

Add a call to vm_radix_init to properly initialize
kernel_pmap->pm_radix.

Reported by:	dbaio
Reviewed by:	alc, jhibbits
Fixes:	2d2bcba7ba drop NULL check from radix trie search
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D41846
This commit is contained in:
Doug Moore 2023-09-13 13:17:57 -05:00
parent 9f16abf8d3
commit 8763b9862f

View file

@ -1844,6 +1844,7 @@ mmu_radix_setup_pagetables(vm_size_t hwphyssz)
bzero(kernel_pmap, sizeof(struct pmap));
PMAP_LOCK_INIT(kernel_pmap);
vm_radix_init(&kernel_pmap->pm_radix);
ptpages = allocpages(3);
l1phys = moea64_bootstrap_alloc(RADIX_PGD_SIZE, RADIX_PGD_SIZE);