From dde9ec936a03d0fb597a66e8394df9feb6d8c1a1 Mon Sep 17 00:00:00 2001 From: "John Hodge (sonata)" Date: Fri, 1 Feb 2013 10:50:24 +0800 Subject: [PATCH] Kernel - Updated events and workqueue to use new function --- KernelLand/Kernel/events.c | 2 +- KernelLand/Kernel/workqueue.c | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/KernelLand/Kernel/events.c b/KernelLand/Kernel/events.c index c3ab282f..84a1b0a5 100644 --- a/KernelLand/Kernel/events.c +++ b/KernelLand/Kernel/events.c @@ -91,7 +91,7 @@ Uint32 Threads_WaitEvents(Uint32 EventMask) // Note stored anywhere because we're woken using other means SHORTREL( &glThreadListLock ); SHORTREL( &us->IsLocked ); - while(us->Status == THREAD_STAT_EVENTSLEEP) Threads_Yield(); + Threads_int_WaitForStatusEnd(THREAD_STAT_EVENTSLEEP); // Woken when lock is acquired SHORTLOCK( &us->IsLocked ); } diff --git a/KernelLand/Kernel/workqueue.c b/KernelLand/Kernel/workqueue.c index 9e2c6f6f..2cd6a258 100644 --- a/KernelLand/Kernel/workqueue.c +++ b/KernelLand/Kernel/workqueue.c @@ -46,10 +46,7 @@ void *Workqueue_GetWork(tWorkqueue *Queue) SHORTREL(&glThreadListLock); // Yield and sleep - Threads_Yield(); - if(us->Status == THREAD_STAT_QUEUESLEEP) { - // Why are we awake?! - } + Threads_int_WaitForStatusEnd(THREAD_STAT_QUEUESLEEP); us->WaitPointer = NULL; } -- 2.20.1