diff --git a/Kernel/Scheduler.cpp b/Kernel/Scheduler.cpp index 8b8008afe4..560bb008d5 100644 --- a/Kernel/Scheduler.cpp +++ b/Kernel/Scheduler.cpp @@ -526,21 +526,6 @@ void Scheduler::invoke_async() pick_next(); } -void Scheduler::yield_from_critical() -{ - auto& proc = Processor::current(); - VERIFY(proc.in_critical()); - VERIFY(!proc.in_irq()); - - yield(); // Flag a context switch - - u32 prev_flags; - u32 prev_crit = Processor::current().clear_critical(prev_flags, false); - - // Note, we may now be on a different CPU! - Processor::current().restore_critical(prev_crit, prev_flags); -} - void Scheduler::notify_finalizer() { if (g_finalizer_has_work.exchange(true, AK::MemoryOrder::memory_order_acq_rel) == false) diff --git a/Kernel/Scheduler.h b/Kernel/Scheduler.h index 08bd9f88ed..9a17758500 100644 --- a/Kernel/Scheduler.h +++ b/Kernel/Scheduler.h @@ -38,7 +38,6 @@ public: [[noreturn]] static void start(); static bool pick_next(); static bool yield(); - static void yield_from_critical(); static bool context_switch(Thread*); static void enter_current(Thread& prev_thread, bool is_first); static void leave_on_first_switch(u32 flags);