svn commit: r361031 - head/sys/amd64/amd64
Mark Johnston
markj at FreeBSD.org
Thu May 14 15:49:38 UTC 2020
Author: markj
Date: Thu May 14 15:49:37 2020
New Revision: 361031
URL: https://svnweb.freebsd.org/changeset/base/361031
Log:
Assert that page table traversal functions don't operate on superpages.
Reviewed by: kib
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D24828
Modified:
head/sys/amd64/amd64/pmap.c
Modified: head/sys/amd64/amd64/pmap.c
==============================================================================
--- head/sys/amd64/amd64/pmap.c Thu May 14 12:52:08 2020 (r361030)
+++ head/sys/amd64/amd64/pmap.c Thu May 14 15:49:37 2020 (r361031)
@@ -1317,6 +1317,8 @@ pmap_pdpe_to_pde(pdp_entry_t *pdpe, vm_offset_t va)
{
pd_entry_t *pde;
+ KASSERT((*pdpe & PG_PS) == 0,
+ ("%s: pdpe %#lx is a leaf", __func__, *pdpe));
pde = (pd_entry_t *)PHYS_TO_DMAP(*pdpe & PG_FRAME);
return (&pde[pmap_pde_index(va)]);
}
@@ -1341,6 +1343,8 @@ pmap_pde_to_pte(pd_entry_t *pde, vm_offset_t va)
{
pt_entry_t *pte;
+ KASSERT((*pde & PG_PS) == 0,
+ ("%s: pde %#lx is a leaf", __func__, *pde));
pte = (pt_entry_t *)PHYS_TO_DMAP(*pde & PG_FRAME);
return (&pte[pmap_pte_index(va)]);
}
More information about the svn-src-head
mailing list