Author: andrew
Date: Thu Feb  1 14:26:26 2018
New Revision: 328658
URL: https://svnweb.freebsd.org/changeset/base/328658

Log:
  Only promote userspace mappings to superpages. This was dropped in r328510,
  however due to the break-before-make requirement on arm64 is is currently
  unsafe to promote kernel pages.
  
  Sponsored by: DARPA, AFRL

Modified:
  head/sys/arm64/arm64/pmap.c

Modified: head/sys/arm64/arm64/pmap.c
==============================================================================
--- head/sys/arm64/arm64/pmap.c Thu Feb  1 13:17:42 2018        (r328657)
+++ head/sys/arm64/arm64/pmap.c Thu Feb  1 14:26:26 2018        (r328658)
@@ -3076,12 +3076,13 @@ validate:
        }
 
 #if VM_NRESERVLEVEL > 0
-               if ((mpte == NULL || mpte->wire_count == NL3PG) &&
-                   pmap_superpages_enabled() &&
-                   (m->flags & PG_FICTITIOUS) == 0 &&
-                   vm_reserv_level_iffullpop(m) == 0) {
-                       pmap_promote_l2(pmap, pde, va, &lock);
-               }
+       if (pmap != pmap_kernel() &&
+           (mpte == NULL || mpte->wire_count == NL3PG) &&
+           pmap_superpages_enabled() &&
+           (m->flags & PG_FICTITIOUS) == 0 &&
+           vm_reserv_level_iffullpop(m) == 0) {
+               pmap_promote_l2(pmap, pde, va, &lock);
+       }
 #endif
 
        if (lock != NULL)
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"

Reply via email to