HomeFreeBSD

Fix some issues with the riscv pmap_protect() implementation.

Description

Fix some issues with the riscv pmap_protect() implementation.

  • Handle VM_PROT_EXECUTE.
  • Clear PTE_D and mark the page dirty when removing write access from a mapping.
  • Atomically clear PTE_W to avoid clobbering a hardware PTE update.

Reviewed by: jhb, kib
MFC after: 1 week
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D18719

Details

Provenance
markjAuthored on
Reviewer
jhb
Differential Revision
D18719: Fix some issues with pmap_protect().
Parents
rS342733: Set PTE_U on PTEs created by pmap_enter_quick().
Branches
Unknown
Tags
Unknown