Date: Fri, 27 Feb 2009 15:25:47 +0000 (UTC) From: John Baldwin <jhb@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org Subject: svn commit: r189107 - stable/7/sys/amd64/amd64 Message-ID: <200902271525.n1RFPlqi073981@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jhb Date: Fri Feb 27 15:25:47 2009 New Revision: 189107 URL: http://svn.freebsd.org/changeset/base/189107 Log: Catch up to the 6GB KVA changes. The original superpages patches on 7 were tested prior to the MFC of the 6GB KVA changes, and I failed to do an extra sanity check yesterday. This should fix the pmap_init() panics. Pointy hat to: jhb Modified: stable/7/sys/amd64/amd64/pmap.c Modified: stable/7/sys/amd64/amd64/pmap.c ============================================================================== --- stable/7/sys/amd64/amd64/pmap.c Fri Feb 27 14:12:05 2009 (r189106) +++ stable/7/sys/amd64/amd64/pmap.c Fri Feb 27 15:25:47 2009 (r189107) @@ -631,15 +631,17 @@ pmap_init(void) * Initialize the vm page array entries for the kernel pmap's * page table pages. */ - pd = pmap_pde(kernel_pmap, VM_MIN_KERNEL_ADDRESS); + pd = pmap_pde(kernel_pmap, KERNBASE); for (i = 0; i < NKPT; i++) { if ((pd[i] & (PG_PS | PG_V)) == (PG_PS | PG_V)) continue; + KASSERT((pd[i] & PG_V) != 0, + ("pmap_init: page table page is missing")); mpte = PHYS_TO_VM_PAGE(pd[i] & PG_FRAME); KASSERT(mpte >= vm_page_array && mpte < &vm_page_array[vm_page_array_size], ("pmap_init: page table page is out of range")); - mpte->pindex = pmap_pde_pindex(VM_MIN_KERNEL_ADDRESS) + i; + mpte->pindex = pmap_pde_pindex(KERNBASE) + i; mpte->phys_addr = pd[i] & PG_FRAME; }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200902271525.n1RFPlqi073981>