From 069fe3760280387a8a0959b7ae522bedddb09d93 Mon Sep 17 00:00:00 2001 From: wheremyfoodat Date: Thu, 27 Apr 2023 00:12:27 +0300 Subject: [PATCH] [Kernel] Always reschedule on ArbitrateAddress (Fixes MK7) --- src/core/kernel/address_arbiter.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/core/kernel/address_arbiter.cpp b/src/core/kernel/address_arbiter.cpp index 8a7ae745..2f67639f 100644 --- a/src/core/kernel/address_arbiter.cpp +++ b/src/core/kernel/address_arbiter.cpp @@ -86,6 +86,8 @@ void Kernel::arbitrateAddress() { default: Helpers::panic("ArbitrateAddress: Unimplemented type %s", arbitrationTypeToString(type)); } + + rescheduleThreads(); } // Signal up to "threadCount" threads waiting on the arbiter indicated by "waitingAddress" @@ -104,9 +106,4 @@ void Kernel::signalArbiter(u32 waitingAddress, s32 threadCount) { if (count == threadCount && threadCount > 0) break; } } - - // Reschedule threads if we woke one up - if (count != 0) { - rescheduleThreads(); - } } \ No newline at end of file