1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-22 09:25:08 +00:00
serenity/Kernel/Arch/x86
Luke Wilde 49259777ef Kernel: Note if the page fault address is a destroyed smart pointer
While I was working on LibWeb, I got a page fault at 0xe0e0e0e4.
This indicates a destroyed RefPtr if compiled with SANITIZE_PTRS
defined. However, the page fault handler didn't print out this
indication.

This makes the page fault handler print out a note if the faulting
address looks like a recently destroyed RefPtr, OwnPtr, NonnullRefPtr,
NonnullOwnPtr, ThreadSafeRefPtr or ThreadSafeNonnullRefPtr. It will
only do this if SANITIZE_PTRS is defined, as smart pointers don't get
scrubbed without it being defined.
2021-10-07 21:30:13 +02:00
..
common Kernel: Note if the page fault address is a destroyed smart pointer 2021-10-07 21:30:13 +02:00
i386 Kernel: Make Processor::platform_string() return StringView 2021-08-23 00:02:09 +02:00
x86_64 Kernel: Make Processor::platform_string() return StringView 2021-08-23 00:02:09 +02:00
ASM_wrapper.h Kernel: Add read_gs_value() and write_gs_value() 2021-08-29 12:26:40 +02:00
CPU.h Kernel: Mark read only RegisterState function parameters as const 2021-07-20 03:21:14 +02:00
CPUID.h Kernel: Allow specifying ecx with CPUID 2021-09-04 22:22:58 +02:00
DescriptorTable.h Kernel: Switch static_asserts of a type size to AK::AssertSize 2021-09-05 20:08:57 +02:00
InterruptDisabler.h Kernel: Move x86 IO instructions code into the x86 specific folder 2021-10-01 12:27:20 +02:00
Interrupts.h Kernel: Don't byteswap the ISR number on interrupt entry 2021-07-01 23:36:17 +02:00
IO.h Kernel: Move x86 IO instructions code into the x86 specific folder 2021-10-01 12:27:20 +02:00
ISRStubs.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
MSR.h Kernel: Hide the implementation detail that MSRs use two registers 2021-07-04 01:07:28 +02:00
PageDirectory.h Kernel: Switch static_asserts of a type size to AK::AssertSize 2021-09-05 20:08:57 +02:00
PageFault.h Kernel: Pull apart CPU.h 2021-06-24 00:38:23 +02:00
Processor.h Kernel: Add Processor::time_spent_idle() 2021-10-07 21:09:38 +02:00
ProcessorInfo.h Kernel: Pull apart CPU.h 2021-06-24 00:38:23 +02:00
RegisterState.h Kernel: Switch static_asserts of a type size to AK::AssertSize 2021-09-05 20:08:57 +02:00
SafeMem.h Kernel: Implement safe_* memory access functions for x86_64 2021-06-27 15:46:42 +02:00
ScopedCritical.h Kernel/SMP: Change critical sections to not disable interrupts 2021-08-10 02:49:37 +02:00
SmapDisabler.h Kernel: Pull apart CPU.h 2021-06-24 00:38:23 +02:00
TrapFrame.h Kernel: Switch static_asserts of a type size to AK::AssertSize 2021-09-05 20:08:57 +02:00
TSS.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00