git: b7de53528836 - main - amd64: Eliminate a redundant test from pmap_enter_object()

Alan Cox alc at FreeBSD.org
Sat Jul 24 04:16:33 UTC 2021


The branch main has been updated by alc:

URL: https://cgit.FreeBSD.org/src/commit/?id=b7de535288362b072cf2801007e4d7e0e903d467

commit b7de535288362b072cf2801007e4d7e0e903d467
Author:     Alan Cox <alc at FreeBSD.org>
AuthorDate: 2021-07-24 03:50:10 +0000
Commit:     Alan Cox <alc at FreeBSD.org>
CommitDate: 2021-07-24 04:15:42 +0000

    amd64: Eliminate a redundant test from pmap_enter_object()
    
    The call to pmap_allow_2m_x_page() in pmap_enter_object() is redundant.
    Specifically, even without the call to pmap_allow_2m_x_page() in
    pmap_enter_object(), pmap_allow_2m_x_page() is eventually called by
    pmap_enter_pde(), so the outcome will be the same.  Essentially,
    calling pmap_allow_2m_x_page() in pmap_enter_object() amounts to
    "optimizing" for the unexpected case.
    
    Reviewed by:    kib
    MFC after:      1 week
---
 sys/amd64/amd64/pmap.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c
index 427fbdf44830..688412594e6c 100644
--- a/sys/amd64/amd64/pmap.c
+++ b/sys/amd64/amd64/pmap.c
@@ -7334,7 +7334,6 @@ pmap_enter_object(pmap_t pmap, vm_offset_t start, vm_offset_t end,
 		va = start + ptoa(diff);
 		if ((va & PDRMASK) == 0 && va + NBPDR <= end &&
 		    m->psind == 1 && pmap_ps_enabled(pmap) &&
-		    pmap_allow_2m_x_page(pmap, (prot & VM_PROT_EXECUTE) != 0) &&
 		    pmap_enter_2mpage(pmap, va, m, prot, &lock))
 			m = &m[NBPDR / PAGE_SIZE - 1];
 		else


More information about the dev-commits-src-all mailing list