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);