mirror of
https://github.com/SerenityOS/serenity.git
synced 2025-01-24 10:22:05 -05:00
beb55f726f
This commit lets us differentiate whether access faults are caused by accessing junk memory addresses given to us by userspace or if we hit a kernel bug. The stub implementations of the `safe_*` functions currently don't let us jump back into them and return a value indicating failure, so we panic if such a fault happens. Practically, this means that we still crash, but if the access violation was caused by something else, we take the usual kernel crash code path and print a register and memory dump, rather than hitting the `TODO_AARCH64` in `handle_safe_access_fault`. |
||
---|---|---|
.. | ||
aarch64 | ||
x86_64 | ||
CPU.h | ||
CurrentTime.h | ||
DebugOutput.h | ||
DeferredCallEntry.h | ||
DeferredCallPool.cpp | ||
DeferredCallPool.h | ||
Delay.h | ||
init.cpp | ||
InterruptManagement.h | ||
Interrupts.h | ||
IRQController.h | ||
mcontext.h | ||
PageDirectory.h | ||
PageFault.cpp | ||
PageFault.h | ||
PCIMSI.h | ||
Processor.cpp | ||
Processor.h | ||
ProcessorSpecificDataID.h | ||
RegisterState.h | ||
SafeMem.h | ||
SmapDisabler.h | ||
ThreadRegisters.h | ||
TrapFrame.h |