1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-30 22:08:12 +00:00

Kernel: Try to dispatch pending signals on context switch

This ensures that processes that don't perform any syscalls will also
eventually receive signals.
This commit is contained in:
Idan Horowitz 2022-02-21 19:54:27 +02:00 committed by Andreas Kling
parent 0911112286
commit 5fa75dbcda
2 changed files with 11 additions and 4 deletions

View file

@ -304,6 +304,11 @@ void Scheduler::context_switch(Thread* thread)
// switched from, and thread reflects Thread::current()
enter_current(*from_thread);
VERIFY(thread == Thread::current());
{
SpinlockLocker lock(thread->get_lock());
thread->dispatch_one_pending_signal();
}
}
void Scheduler::enter_current(Thread& prev_thread)