Kernel: Fix signal trampoline
32 bit did not even support it and 64 bit did not align stack
This commit is contained in:
@@ -335,7 +335,9 @@ namespace Kernel
|
||||
else if (signal_handler != (vaddr_t)SIG_DFL)
|
||||
{
|
||||
// call userspace signal handlers
|
||||
#if ARCH(x86_64)
|
||||
interrupt_stack.sp -= 128; // skip possible red-zone
|
||||
#endif
|
||||
write_to_stack(interrupt_stack.sp, interrupt_stack.ip);
|
||||
write_to_stack(interrupt_stack.sp, signal);
|
||||
write_to_stack(interrupt_stack.sp, signal_handler);
|
||||
|
||||
Reference in New Issue
Block a user