mirror of
https://github.com/fergalmoran/ladybird.git
synced 2026-01-04 15:45:25 +00:00
Kernel: Map signal trampoline into each process's address space
The signal trampoline was previously in kernelspace memory, but with a special exception to make it user-accessible. This patch moves it into each process's regular address space so we can stop supporting user-allowed memory above 0xc0000000.
This commit is contained in:
@@ -834,7 +834,7 @@ DispatchSignalResult Thread::dispatch_signal(u8 signal)
|
||||
// valid (fork, exec etc) but the tss will, so we use that instead.
|
||||
auto& regs = get_register_dump_from_stack();
|
||||
setup_stack(regs);
|
||||
regs.eip = g_return_to_ring3_from_signal_trampoline.get();
|
||||
regs.eip = process.signal_trampoline().get();
|
||||
|
||||
#if SIGNAL_DEBUG
|
||||
dbgln("signal: Thread in state '{}' has been primed with signal handler {:04x}:{:08x} to deliver {}", state_string(), m_tss.cs, m_tss.eip, signal);
|
||||
|
||||
Reference in New Issue
Block a user