summaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/scheduler.cpp
diff options
context:
space:
mode:
authorGravatar Fernando Sahmkow2019-12-05 16:04:32 -0400
committerGravatar FernandoS272019-12-05 18:08:59 -0400
commit40cd4df5842e90e2e946bc30a80d15e897288a52 (patch)
tree1f95b440a879c7058d7bc0c7289b428d4bb51b7b /src/core/hle/kernel/scheduler.cpp
parentMerge pull request #3191 from yuzu-emu/jroweboy-patch-1 (diff)
downloadyuzu-40cd4df5842e90e2e946bc30a80d15e897288a52.tar.gz
yuzu-40cd4df5842e90e2e946bc30a80d15e897288a52.tar.xz
yuzu-40cd4df5842e90e2e946bc30a80d15e897288a52.zip
CpuCore: Clear exclusive state after doing a run in dynarmic.
This commit corrects an error in which a Core could remain with an exclusive state after running, leaving space for possible race conditions between changing cores.
Diffstat (limited to 'src/core/hle/kernel/scheduler.cpp')
-rw-r--r--src/core/hle/kernel/scheduler.cpp1
1 files changed, 0 insertions, 1 deletions
diff --git a/src/core/hle/kernel/scheduler.cpp b/src/core/hle/kernel/scheduler.cpp
index 3f5192087..d36fcd7d9 100644
--- a/src/core/hle/kernel/scheduler.cpp
+++ b/src/core/hle/kernel/scheduler.cpp
@@ -458,7 +458,6 @@ void Scheduler::SwitchContext() {
458 cpu_core.LoadContext(new_thread->GetContext()); 458 cpu_core.LoadContext(new_thread->GetContext());
459 cpu_core.SetTlsAddress(new_thread->GetTLSAddress()); 459 cpu_core.SetTlsAddress(new_thread->GetTLSAddress());
460 cpu_core.SetTPIDR_EL0(new_thread->GetTPIDR_EL0()); 460 cpu_core.SetTPIDR_EL0(new_thread->GetTPIDR_EL0());
461 cpu_core.ClearExclusiveState();
462 } else { 461 } else {
463 current_thread = nullptr; 462 current_thread = nullptr;
464 // Note: We do not reset the current process and current page table when idling because 463 // Note: We do not reset the current process and current page table when idling because