Page MenuHomeFreeBSD

D56925.id177832.diff
No OneTemporary

D56925.id177832.diff

diff --git a/sys/riscv/riscv/pmap.c b/sys/riscv/riscv/pmap.c
--- a/sys/riscv/riscv/pmap.c
+++ b/sys/riscv/riscv/pmap.c
@@ -3471,6 +3471,14 @@
vm_page_dirty(m);
} else {
pmap_store(l3, new_l3);
+ if (pmap == kernel_pmap) {
+ /*
+ * Invalidate the TLB entry for 'va' to guard
+ * against spurious kernel page faults on
+ * implementations that cache invalid PTEs.
+ */
+ sfence_vma_page(va);
+ }
}
#if VM_NRESERVLEVEL > 0

File Metadata

Mime Type
text/plain
Expires
Wed, Sep 9, 4:39 AM (5 h, 43 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
38562482
Default Alt Text
D56925.id177832.diff (453 B)

Event Timeline