Page MenuHomeFreeBSD

Add support for BTI instructions in the kernel
AbandonedPublic

Authored by andrew on Dec 8 2021, 4:04 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Oct 24, 2:52 AM
Unknown Object (File)
Tue, Oct 22, 6:00 PM
Unknown Object (File)
Sep 28 2024, 1:21 PM
Unknown Object (File)
Sep 21 2024, 10:10 AM
Unknown Object (File)
Sep 19 2024, 3:01 PM
Unknown Object (File)
Sep 19 2024, 11:31 AM
Unknown Object (File)
Sep 19 2024, 9:28 AM
Unknown Object (File)
Sep 16 2024, 12:42 PM
Subscribers

Details

Reviewers
markj
kib
scottph
manu
Group Reviewers
arm64
Summary

When the kernel is built with BTI support we need to add a guard page
flag to the page table entries for executable memory. Add this flag
and use it on all kernel executable memory.

As this creates the requirement that modules must be built for BTI if
the kernel has leave disabled until these modules can be checked to
ensure they are built this way. A module built with BTI support will
work with a kernel without it, however in this case the BTI
instructions will be nop.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 43238
Build 40126: arc lint + arc unit