K 10 svn:author V 6 jrtc27 K 8 svn:date V 27 2020-04-06T22:29:15.046665Z K 7 svn:log V 669 riscv: Fix pmap_fault_fixup for L3 pages Summary: The parentheses being in the wrong place means that, for L3 pages, oldpte has all bits except PTE_V cleared, and so all the subsequent checks against oldpte will fail, causing us to bail out and not retry the faulting instruction after an SFENCE.VMA. This causes a WITNESS + INVARIANTS kernel to fault on the "Chisel P3" (BOOM-based) DARPA SSITH GFE SoC in pmap_init when writing to pv_table and, being a nofault entry, subsequently panic with: panic: vm_fault_lookup: fault on nofault entry, addr: 0xffffffc004e00000 Reviewed by: markj Approved by: markj Differential Revision: https://reviews.freebsd.org/D24315 END