#
b799d160 |
|
15-Jun-2023 |
David Karoly <karolyd577@gmail.com> |
kernel/arm/paging: implement Modified Flag * Introduce SWDBM flag similarly to the arm64 port * Reuse TEX[2] for SWDBM flag which should be availble to be used by the operating system if TEX remap is enabled. * Introduce SetAndClearPageTableEntryFlags for updating accessed and modified flags atomically * Startup sequence is handled similarly to accessed flag, i.e. set Modified flag in initially mapped pages in bootloader and early map. * Once the kernel initialization has progressed enough, pages are mapped as read-only and modified flag handling is done in the page fault handler. Change-Id: I8f761e2c6325d1b91481abd569d5e8befded0761 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6518 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
|
#
f61fb770 |
|
30-May-2023 |
David Karoly <karolyd577@gmail.com> |
kernel/arm: don't set Accessed Flag when initially mapping a page Pages should not be marked as accessed when initially mapping them. However, there's a short interval during kernel startup when new pages are mapped but the fault handler is not installed yet. Therefore, we set Accessed Flag to 1 in early_map. Once the kernel initialization has progressed enough, we start mapping new pages with Accessed Flag set to 0. The chicken and egg problem of initially mapping the vector page is tackled by preallocating the vector page in the boot loader. Change-Id: Ie3be4f81812d7a090af57e8c79420598d16182b9 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6450 Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com> Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
|
#
c13766fc |
|
09-May-2023 |
David Karoly <karolyd577@gmail.com> |
kernel/arm: check for access flag fault in page fault handler Change-Id: Icc782a692e5dcd861958ffea934386b4d4e569c7 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6428 Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
3bfbf2fb |
|
05-Sep-2022 |
David Karoly <karolyd577@gmail.com> |
kernel/arm: check for PXN and alignment fault in page fault handler Change-Id: I2a863b57b1252343c9c029d1bb5af8d328558576 Reviewed-on: https://review.haiku-os.org/c/haiku/+/5620 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
17569c02 |
|
04-Sep-2022 |
David Karoly <karolyd577@gmail.com> |
kernel/arm: clean up arch-specific defines * align fault syndrome and fault address register naming with ARM Architecture Reference Manual (i.e. IFSR, DFSR, IFAR, DFAR) * move PSR bitfield defines to arch_cpu_defs.h Change-Id: I813045eec335ffbdd75270ad5a1afb2f222f73c8 Reviewed-on: https://review.haiku-os.org/c/haiku/+/5618 Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com> Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
|
#
6804f6c7 |
|
28-Feb-2022 |
David Karoly <karolyd577@gmail.com> |
kernel/arm: implement entering userspace Change-Id: Icf3945db979a8f4444856fc7157649f48b297c29 Reviewed-on: https://review.haiku-os.org/c/haiku/+/5037 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com> Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
4c6e7a4b |
|
24-Feb-2022 |
David Karoly <karolyd577@gmail.com> |
kernel/arm: implement prefetch abort handler Change-Id: I39c330a44ad36ede41c7727017dd733d07288be9 Reviewed-on: https://review.haiku-os.org/c/haiku/+/4983 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
|
#
4ddef6e7 |
|
18-Feb-2022 |
David Karoly <karolyd577@gmail.com> |
kernel/arm: detect read/write access in data abort handler Use Data Fault Status Register's bit 11 to initialize isWrite. see: ARMv7 Architecture Reference Manual,section B3.9.5 Distinguishing read and write accesses on Data Abort exceptions Change-Id: I7da6702fc0e9579e5cb09cba3c5c89f004ec268a Reviewed-on: https://review.haiku-os.org/c/haiku/+/4972 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: Jérôme Duval <jerome.duval@gmail.com> Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
45b01eb8 |
|
19-Apr-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added private system arch specific arch_cpu_defs.h header, currently defining only a SPINLOCK_PAUSE() macro. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36351 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
45b01eb84189a623981270a02d21c7a8cb93a9e1 |
|
19-Apr-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added private system arch specific arch_cpu_defs.h header, currently defining only a SPINLOCK_PAUSE() macro. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36351 a95241bf-73f2-0310-859d-f6bbb57e9c96
|