diff options
author | andrew <andrew@FreeBSD.org> | 2017-05-30 12:44:01 +0000 |
---|---|---|
committer | andrew <andrew@FreeBSD.org> | 2017-05-30 12:44:01 +0000 |
commit | edb010ea9cd5ce05e055474ade71fb8687a74eb6 (patch) | |
tree | 15fdf8608cf475680c024e227c88c01ca3c49b3a /lib/libc/stdlib/set_constraint_handler_s.c | |
parent | 44c9bb43d0bd6f6d94443c9efa27cbaf86a38825 (diff) | |
download | FreeBSD-src-edb010ea9cd5ce05e055474ade71fb8687a74eb6.zip FreeBSD-src-edb010ea9cd5ce05e055474ade71fb8687a74eb6.tar.gz |
MFC r316734, r316761: Support Execute-Never bit in the arm64 pmap.
r316734:
Start to use the User and Privileged execute-never bits in the arm64
pagetables. This sets both bits when entering an address we know shouldn't
be executed.
I expect we could mark all userspace pages as Privileged execute-never to
ensure the kernel doesn't branch to one of these addresses.
While here add the ARMv8.1 upper attributes.
r316761:
Set the arm64 Execute-never bits in more places.
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.
Diffstat (limited to 'lib/libc/stdlib/set_constraint_handler_s.c')
0 files changed, 0 insertions, 0 deletions