From e7b6252bd31ede0f02bf380c358ad44d1b593c27 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Thu, 1 Sep 2022 15:43:11 -0600 Subject: [PATCH] Make semaphore always sched_yield --- src/sync/semaphore.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/sync/semaphore.rs b/src/sync/semaphore.rs index 2b4a40da7a..b4997a99a6 100644 --- a/src/sync/semaphore.rs +++ b/src/sync/semaphore.rs @@ -29,7 +29,8 @@ impl Semaphore { } loop { while self.lock.load(Ordering::Acquire) < 1 { - spin_loop(); + //spin_loop(); + Sys::sched_yield(); } let tmp = self.lock.fetch_sub(1, Ordering::AcqRel); if tmp >= 1 {