svn commit: r332827 - stable/11/sys/amd64/amd64

Jonathan T. Looney jtl at FreeBSD.org
Fri Apr 20 15:35:59 UTC 2018


Author: jtl
Date: Fri Apr 20 15:35:58 2018
New Revision: 332827
URL: https://svnweb.freebsd.org/changeset/base/332827

Log:
  MFC r330511:
    We shouldn't need to execute code in the recursive page table mappings;
    therefore, it should be safe to set the NX bit on the PML4E for the
    recursive page table mappings.  According to the Intel docs, the effect
    of the NX bit should propogate to any page reached through a PML4E which
    has the NX bit set.
  
  Sponsored by:	Netflix, Inc.

Modified:
  stable/11/sys/amd64/amd64/pmap.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/amd64/amd64/pmap.c
==============================================================================
--- stable/11/sys/amd64/amd64/pmap.c	Fri Apr 20 15:28:58 2018	(r332826)
+++ stable/11/sys/amd64/amd64/pmap.c	Fri Apr 20 15:35:58 2018	(r332827)
@@ -984,7 +984,7 @@ create_pagetables(vm_paddr_t *firstaddr)
 	/* And recursively map PML4 to itself in order to get PTmap */
 	p4_p = (pml4_entry_t *)KPML4phys;
 	p4_p[PML4PML4I] = KPML4phys;
-	p4_p[PML4PML4I] |= X86_PG_RW | X86_PG_V | PG_U;
+	p4_p[PML4PML4I] |= X86_PG_RW | X86_PG_V | PG_U | pg_nx;
 
 	/* Connect the Direct Map slot(s) up to the PML4. */
 	for (i = 0; i < ndmpdpphys; i++) {


More information about the svn-src-all mailing list