haiku/headers
David Karoly adc32659fb arm: enable enforcing memory access permissions
Bootloader:
* set permissions to kernel read/write, no user access
  for initially mapped memory areas
* set permissions to kernel read/write, no execute,
  no user access for UART

Kernel:
* physical memory mapper uses kernel read/write mapping
  with no-execute bit enabled
* all other pages are mapped as read/write/execute for
  kernel and user
* proper access permissions and memory types to be
  implemented later

Enforce memory access permissions by setting DACR to
client mode for domain #0, no access for other domains.

see ARM Architecture Reference Manual, section B3.7 Memory access control
and in particular the following subsections:
B3.7.1 Access permissions
B3.7.2 Execute-never restrictions on instruction fetching
B3.7.3 Domains, Short-descriptor format only

Change-Id: I8127b4c72dc516d013cb9751d80d6f3a9ec835e6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5233
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2022-04-22 12:20:01 +00:00
..
build libbe_build: Fix build on non-Haiku platforms. 2021-11-18 15:42:17 -05:00
compatibility features.h: Define _DEFAULT_SOURCE when _GNU_SOURCE is defined. 2021-11-17 13:55:50 -05:00
config riscv: cleanup architecture macro checks 2021-09-01 18:04:59 +00:00
cpp build fix. 2015-11-12 22:24:16 +01:00
glibc
libs Mass updating of OpenBeOS text to Haiku 2021-11-07 10:00:35 +00:00
os listusb: decode USB-CDC descriptors 2022-04-21 18:29:41 +00:00
posix libroot: Add support for C11 threads (except gcc2). 2022-04-22 08:53:51 +00:00
private arm: enable enforcing memory access permissions 2022-04-22 12:20:01 +00:00
tools cppunit: Enable CPPUNIT_HAVE_SSTREAM for the non-legacy GCC. 2022-03-29 19:09:38 -04:00