amd64 pmap: Pre-set PG_M on 2MB KASAN shadow map entries
Also remove a redundant assertion in pmap_kasan_enter(). Reviewed by: alc, kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D31295
This commit is contained in:
parent
805c3af898
commit
4fd450a87d
@ -11321,7 +11321,7 @@ pmap_kasan_enter(vm_offset_t va)
|
||||
m = pmap_kasan_enter_alloc_2m();
|
||||
if (m != NULL) {
|
||||
*pde = (pd_entry_t)(VM_PAGE_TO_PHYS(m) | X86_PG_RW |
|
||||
X86_PG_PS | X86_PG_V | pg_nx);
|
||||
X86_PG_PS | X86_PG_V | X86_PG_A | X86_PG_M | pg_nx);
|
||||
} else {
|
||||
m = pmap_kasan_enter_alloc_4k();
|
||||
*pde = (pd_entry_t)(VM_PAGE_TO_PHYS(m) | X86_PG_RW |
|
||||
@ -11333,8 +11333,6 @@ pmap_kasan_enter(vm_offset_t va)
|
||||
pte = pmap_pde_to_pte(pde, va);
|
||||
if ((*pte & X86_PG_V) != 0)
|
||||
return;
|
||||
KASSERT((*pte & X86_PG_V) == 0,
|
||||
("%s: shadow address %#lx is already mapped", __func__, va));
|
||||
m = pmap_kasan_enter_alloc_4k();
|
||||
*pte = (pt_entry_t)(VM_PAGE_TO_PHYS(m) | X86_PG_RW | X86_PG_V |
|
||||
X86_PG_M | X86_PG_A | pg_nx);
|
||||
|
Loading…
Reference in New Issue
Block a user