Page MenuHomeFreeBSD

Set the arm64 Execute-never bits in more places.
ClosedPublic

Authored by andrew on Apr 13 2017, 10:33 AM.
Tags
None
Referenced Files
F143404036: D10382.id27401.diff
Fri, Jan 30, 1:17 AM
Unknown Object (File)
Thu, Jan 29, 1:26 PM
Unknown Object (File)
Wed, Jan 28, 5:10 PM
Unknown Object (File)
Sun, Jan 25, 9:19 AM
Unknown Object (File)
Dec 29 2025, 5:24 AM
Unknown Object (File)
Nov 28 2025, 8:24 PM
Unknown Object (File)
Nov 21 2025, 6:51 AM
Unknown Object (File)
Nov 21 2025, 6:51 AM
Subscribers

Details

Summary

We need to set the Execute-never bits when mapping device memory
as the hardware may perform speculative instruction fetches.

Set the Privileged Execute-ever bit on userspace memory to stop
the kernel if it is tricked into executing it.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 8711
Build 9049: arc lint + arc unit

Event Timeline

kib added inline comments.
sys/arm64/arm64/pmap.c
2731

Why using such rude check, instead of VM_MAXUSER_ADDRESS ?

This revision is now accepted and ready to land.Apr 13 2017, 12:45 PM
sys/arm64/arm64/pmap.c
2731

I'm not sure why I did that.

This revision was automatically updated to reflect the committed changes.