From a9cf0134b76bac1bc225647f1bd0ee1f3b2d8e5d Mon Sep 17 00:00:00 2001 From: Bananymous Date: Tue, 14 Jul 2026 05:42:31 +0300 Subject: [PATCH] Kernel: Don't block thread if the wake time has already passed --- kernel/kernel/Scheduler.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kernel/kernel/Scheduler.cpp b/kernel/kernel/Scheduler.cpp index 7787aff8..6edb5d5a 100644 --- a/kernel/kernel/Scheduler.cpp +++ b/kernel/kernel/Scheduler.cpp @@ -667,6 +667,9 @@ namespace Kernel void Scheduler::block_current_thread(ThreadBlocker* blocker, uint64_t wake_time_ns, BaseMutex* mutex) { + if (SystemTimer::get().ns_since_boot() >= wake_time_ns) + return; + auto state = Processor::get_interrupt_state(); Processor::set_interrupt_state(InterruptState::Disabled);