From 9958d12db23a5db58fef37d8f0a05211d9036eed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Thu, 5 Jul 2007 18:27:27 +0000 Subject: [PATCH] Because of ongoing problems with thread_yield() and our current scheduler, I've disabled yielding for now; it will now just snooze a bit. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21572 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/system/kernel/thread.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/system/kernel/thread.c b/src/system/kernel/thread.c index b4e427bf92..47b614d670 100644 --- a/src/system/kernel/thread.c +++ b/src/system/kernel/thread.c @@ -1292,6 +1292,9 @@ peek_next_thread_id(void) void thread_yield(void) { + // snooze for roughly 3 thread quantums + snooze_etc(9000, B_SYSTEM_TIMEBASE, B_RELATIVE_TIMEOUT | B_CAN_INTERRUPT); +#if 0 cpu_status state; struct thread *thread = thread_get_current_thread(); @@ -1308,6 +1311,7 @@ thread_yield(void) RELEASE_THREAD_LOCK(); restore_interrupts(state); +#endif }