diff options
author | Fernando S <fsahmkow27@gmail.com> | 2023-12-24 16:23:14 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-24 16:23:14 +0100 |
commit | 05e3db3ac9edbff0e4885ef8b42d3a2427c9f027 (patch) | |
tree | 2f959b67638ab1134cfca19ac1f041552a68c335 /src/core/hle/kernel/k_condition_variable.cpp | |
parent | Merge pull request #12412 from ameerj/gl-query-prims (diff) | |
parent | kernel: fix resource limit imbalance (diff) | |
download | yuzu-05e3db3ac9edbff0e4885ef8b42d3a2427c9f027.tar yuzu-05e3db3ac9edbff0e4885ef8b42d3a2427c9f027.tar.gz yuzu-05e3db3ac9edbff0e4885ef8b42d3a2427c9f027.tar.bz2 yuzu-05e3db3ac9edbff0e4885ef8b42d3a2427c9f027.tar.lz yuzu-05e3db3ac9edbff0e4885ef8b42d3a2427c9f027.tar.xz yuzu-05e3db3ac9edbff0e4885ef8b42d3a2427c9f027.tar.zst yuzu-05e3db3ac9edbff0e4885ef8b42d3a2427c9f027.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/kernel/k_condition_variable.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/core/hle/kernel/k_condition_variable.cpp b/src/core/hle/kernel/k_condition_variable.cpp index 7633a51fb..94ea3527a 100644 --- a/src/core/hle/kernel/k_condition_variable.cpp +++ b/src/core/hle/kernel/k_condition_variable.cpp @@ -28,10 +28,10 @@ bool WriteToUser(KernelCore& kernel, KProcessAddress address, const u32* p) { return true; } -bool UpdateLockAtomic(Core::System& system, u32* out, KProcessAddress address, u32 if_zero, +bool UpdateLockAtomic(KernelCore& kernel, u32* out, KProcessAddress address, u32 if_zero, u32 new_orr_mask) { - auto& monitor = system.Monitor(); - const auto current_core = system.Kernel().CurrentPhysicalCoreIndex(); + auto& monitor = GetCurrentProcess(kernel).GetExclusiveMonitor(); + const auto current_core = kernel.CurrentPhysicalCoreIndex(); u32 expected{}; @@ -208,7 +208,7 @@ void KConditionVariable::SignalImpl(KThread* thread) { // TODO(bunnei): We should call CanAccessAtomic(..) here. can_access = true; if (can_access) [[likely]] { - UpdateLockAtomic(m_system, std::addressof(prev_tag), address, own_tag, + UpdateLockAtomic(m_kernel, std::addressof(prev_tag), address, own_tag, Svc::HandleWaitMask); } } |