Procházet zdrojové kódy

fix(idle_task): disable irq when we use scheduler

greatbridf před 3 týdny
rodič
revize
44231d9217
1 změnil soubory, kde provedl 1 přidání a 2 odebrání
  1. 1 2
      src/kernel/task/scheduler.rs

+ 1 - 2
src/kernel/task/scheduler.rs

@@ -185,8 +185,7 @@ extern "C" fn idle_task() {
     loop {
         debug_assert_eq!(preempt::count(), 1);
 
-        // SAFETY: No need to call `lock_irq`, preempt is already disabled.
-        let mut scheduler = Scheduler::get().lock();
+        let mut scheduler = Scheduler::get().lock_irq();
         let state = *Thread::current().state.lock();
 
         // Previous thread is `Running`.