HomeFreeBSD

Add the arm64 table attributes and use them

Description

Add the arm64 table attributes and use them

Add the table page table attributes on arm64 and use them to add
restrictions to the block and page entries below them. This ensures
we are unable to increase the permissions in these last level entries
without also changing them in the upper levels.

Use the attributes to ensure the kernel can't execute from userspace
memory and vice versa, userspace has no access to read or write kernel
memory, and that the DMAP region is non-executable.

Reviewed by: alc, kib
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D32081

Details

Provenance
andrewAuthored on Sep 23 2021, 3:00 PM
Reviewer
alc
Differential Revision
D32081: Add the arm64 table attributes and use them
Parents
rG0cfc8b10edd7: f00f: We don't need giant to create IDT for workaround.
Branches
Unknown
Tags
Unknown