diff options
author | Idan Horowitz <idan.horowitz@gmail.com> | 2021-11-30 00:27:28 +0200 |
---|---|---|
committer | Idan Horowitz <idan.horowitz@gmail.com> | 2021-12-01 21:44:11 +0200 |
commit | a9e436c4a3bc30e34212ec2ee6b52c76443f341d (patch) | |
tree | c4a56eca18593afc5c1ac5ceba7a681bd9dbbb8c /Kernel/Arch | |
parent | 4ca39c71104084be36b672fbe10952ba88326fba (diff) | |
download | serenity-a9e436c4a3bc30e34212ec2ee6b52c76443f341d.zip |
Kernel: Replace usages of SIGSTKFLT with SIGSEGV
SIGSTKFLT is a signal that signifies a stack fault in a x87 coprocessor,
this signal is not POSIX and also unused by Linux and the BSDs, so let's
use SIGSEGV so programs that setup signal handlers for the common
signals could still handle them in serenity.
Diffstat (limited to 'Kernel/Arch')
-rw-r--r-- | Kernel/Arch/x86/common/Interrupts.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Kernel/Arch/x86/common/Interrupts.cpp b/Kernel/Arch/x86/common/Interrupts.cpp index d355354ec4..0c2650ed9b 100644 --- a/Kernel/Arch/x86/common/Interrupts.cpp +++ b/Kernel/Arch/x86/common/Interrupts.cpp @@ -316,7 +316,7 @@ void page_fault_handler(TrapFrame* trap) VirtualAddress userspace_sp = VirtualAddress { regs.userspace_sp() }; if (!faulted_in_kernel && !MM.validate_user_stack(current_thread->process().address_space(), userspace_sp)) { dbgln("Invalid stack pointer: {}", userspace_sp); - handle_crash(regs, "Bad stack on page fault", SIGSTKFLT); + handle_crash(regs, "Bad stack on page fault", SIGSEGV); } if (fault_address >= (FlatPtr)&start_of_ro_after_init && fault_address < (FlatPtr)&end_of_ro_after_init) { |