summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar bunnei2021-11-28 00:40:50 -0800
committerGravatar bunnei2021-12-06 16:39:18 -0800
commita2384a18fad1d7541c0e11b3c6d762aa46cd1b15 (patch)
treeb0dfbd934384335eb8011fde898b663658c40b6e
parenthle: kernel: k_thread: Rename sleeping_queue -> wait_queue. (diff)
downloadyuzu-a2384a18fad1d7541c0e11b3c6d762aa46cd1b15.tar.gz
yuzu-a2384a18fad1d7541c0e11b3c6d762aa46cd1b15.tar.xz
yuzu-a2384a18fad1d7541c0e11b3c6d762aa46cd1b15.zip
hle: kernel: k_thread: Skip reschedule on DisableDispatch with SC.
-rw-r--r--src/core/hle/kernel/k_thread.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/core/hle/kernel/k_thread.cpp b/src/core/hle/kernel/k_thread.cpp
index 245437387..03175e5c2 100644
--- a/src/core/hle/kernel/k_thread.cpp
+++ b/src/core/hle/kernel/k_thread.cpp
@@ -1096,6 +1096,11 @@ KScopedDisableDispatch::~KScopedDisableDispatch() {
1096 return; 1096 return;
1097 } 1097 }
1098 1098
1099 // Skip the reschedule if single-core, as dispatch tracking is disabled here.
1100 if (!Settings::values.use_multi_core.GetValue()) {
1101 return;
1102 }
1103
1099 if (GetCurrentThread(kernel).GetDisableDispatchCount() <= 1) { 1104 if (GetCurrentThread(kernel).GetDisableDispatchCount() <= 1) {
1100 auto scheduler = kernel.CurrentScheduler(); 1105 auto scheduler = kernel.CurrentScheduler();
1101 1106