diff --git a/Kernel/Arch/i386/CPU.cpp b/Kernel/Arch/i386/CPU.cpp index 8d7daee5d7..1d713b584d 100644 --- a/Kernel/Arch/i386/CPU.cpp +++ b/Kernel/Arch/i386/CPU.cpp @@ -279,10 +279,11 @@ void page_fault_handler(RegisterDump regs) return; } - kprintf("\033[31;1m%s(%u:%u) Unrecoverable page fault, %s%s address %p\033[0m\n", + kprintf("\033[31;1m%s(%u:%u) Unrecoverable page fault, %s%s%s address %p\033[0m\n", current->process().name().characters(), current->pid(), current->tid(), + regs.exception_code & PageFaultFlags::ReservedBitViolation ? "reserved bit violation / " : "", regs.exception_code & PageFaultFlags::InstructionFetch ? "instruction fetch / " : "", regs.exception_code & PageFaultFlags::Write ? "write to" : "read from", fault_address); diff --git a/Kernel/Arch/i386/CPU.h b/Kernel/Arch/i386/CPU.h index 0f592e9037..d946a783f0 100644 --- a/Kernel/Arch/i386/CPU.h +++ b/Kernel/Arch/i386/CPU.h @@ -348,7 +348,8 @@ struct PageFaultFlags { Write = 0x02, UserMode = 0x04, SupervisorMode = 0x00, - InstructionFetch = 0x08, + ReservedBitViolation = 0x08, + InstructionFetch = 0x10, }; };