restore SIGNAL_WORK_THREAD_MODE

This commit is contained in:
Sijmen Woutersen 2022-11-12 10:56:49 +01:00
parent 6e1120e17e
commit e70ae71ecc

View File

@ -54,8 +54,13 @@ impl Executor {
loop { loop {
unsafe { unsafe {
self.inner.poll(); self.inner.poll();
// we do not care about race conditions between the load and store operations, interrupts
// will only set this value to true.
// if there is work to do, loop back to polling
if !SIGNAL_WORK_THREAD_MODE.fetch_and(false, Ordering::SeqCst) {
core::arch::asm!("wfi"); core::arch::asm!("wfi");
} }
} }
} }
} }
}