Page MenuHomeFreeBSD

D13956.id38103.diff
No OneTemporary

D13956.id38103.diff

Index: sys/amd64/amd64/pmap.c
===================================================================
--- sys/amd64/amd64/pmap.c
+++ sys/amd64/amd64/pmap.c
@@ -2575,6 +2575,12 @@
pml4 = &pmap->pm_pml4[pml4index];
*pml4 = VM_PAGE_TO_PHYS(m) | PG_U | PG_RW | PG_V | PG_A | PG_M;
if (pmap->pm_pml4u != NULL && pml4index < NUPML4E) {
+ /*
+ * Safety belt: ensure that usermode traps if
+ * kernel mode mappings leak into user mode.
+ */
+ *pml4 |= pg_nx;
+
pml4u = &pmap->pm_pml4u[pml4index];
*pml4u = VM_PAGE_TO_PHYS(m) | PG_U | PG_RW | PG_V |
PG_A | PG_M;

File Metadata

Mime Type
text/plain
Expires
Sat, May 16, 1:54 PM (18 h, 32 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
33132206
Default Alt Text
D13956.id38103.diff (588 B)

Event Timeline