diff options
| author | 2020-12-03 22:26:42 -0800 | |
|---|---|---|
| committer | 2020-12-06 00:03:24 -0800 | |
| commit | ccce6cb3be062fc7ae162bed32202538ebc2e3d9 (patch) | |
| tree | 206612bfc3718371d2355c8e3447aba288b1828f /src/core/hle/kernel/svc.cpp | |
| parent | hle: kernel: Separate KScopedSchedulerLockAndSleep from k_scheduler. (diff) | |
| download | yuzu-ccce6cb3be062fc7ae162bed32202538ebc2e3d9.tar.gz yuzu-ccce6cb3be062fc7ae162bed32202538ebc2e3d9.tar.xz yuzu-ccce6cb3be062fc7ae162bed32202538ebc2e3d9.zip | |
hle: kernel: Migrate to KScopedSchedulerLock.
Diffstat (limited to 'src/core/hle/kernel/svc.cpp')
| -rw-r--r-- | src/core/hle/kernel/svc.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/core/hle/kernel/svc.cpp b/src/core/hle/kernel/svc.cpp index 2760a307c..30d60aeb6 100644 --- a/src/core/hle/kernel/svc.cpp +++ b/src/core/hle/kernel/svc.cpp | |||
| @@ -345,7 +345,7 @@ static ResultCode SendSyncRequest(Core::System& system, Handle handle) { | |||
| 345 | 345 | ||
| 346 | auto thread = kernel.CurrentScheduler()->GetCurrentThread(); | 346 | auto thread = kernel.CurrentScheduler()->GetCurrentThread(); |
| 347 | { | 347 | { |
| 348 | SchedulerLock lock(kernel); | 348 | KScopedSchedulerLock lock(kernel); |
| 349 | thread->InvalidateHLECallback(); | 349 | thread->InvalidateHLECallback(); |
| 350 | thread->SetStatus(ThreadStatus::WaitIPC); | 350 | thread->SetStatus(ThreadStatus::WaitIPC); |
| 351 | session->SendSyncRequest(SharedFrom(thread), system.Memory(), system.CoreTiming()); | 351 | session->SendSyncRequest(SharedFrom(thread), system.Memory(), system.CoreTiming()); |
| @@ -359,7 +359,7 @@ static ResultCode SendSyncRequest(Core::System& system, Handle handle) { | |||
| 359 | } | 359 | } |
| 360 | 360 | ||
| 361 | { | 361 | { |
| 362 | SchedulerLock lock(kernel); | 362 | KScopedSchedulerLock lock(kernel); |
| 363 | auto* sync_object = thread->GetHLESyncObject(); | 363 | auto* sync_object = thread->GetHLESyncObject(); |
| 364 | sync_object->RemoveWaitingThread(SharedFrom(thread)); | 364 | sync_object->RemoveWaitingThread(SharedFrom(thread)); |
| 365 | } | 365 | } |
| @@ -1691,7 +1691,7 @@ static ResultCode WaitProcessWideKeyAtomic(Core::System& system, VAddr mutex_add | |||
| 1691 | } | 1691 | } |
| 1692 | 1692 | ||
| 1693 | { | 1693 | { |
| 1694 | SchedulerLock lock(kernel); | 1694 | KScopedSchedulerLock lock(kernel); |
| 1695 | 1695 | ||
| 1696 | auto* owner = current_thread->GetLockOwner(); | 1696 | auto* owner = current_thread->GetLockOwner(); |
| 1697 | if (owner != nullptr) { | 1697 | if (owner != nullptr) { |
| @@ -1724,7 +1724,7 @@ static void SignalProcessWideKey(Core::System& system, VAddr condition_variable_ | |||
| 1724 | 1724 | ||
| 1725 | // Retrieve a list of all threads that are waiting for this condition variable. | 1725 | // Retrieve a list of all threads that are waiting for this condition variable. |
| 1726 | auto& kernel = system.Kernel(); | 1726 | auto& kernel = system.Kernel(); |
| 1727 | SchedulerLock lock(kernel); | 1727 | KScopedSchedulerLock lock(kernel); |
| 1728 | auto* const current_process = kernel.CurrentProcess(); | 1728 | auto* const current_process = kernel.CurrentProcess(); |
| 1729 | std::vector<std::shared_ptr<Thread>> waiting_threads = | 1729 | std::vector<std::shared_ptr<Thread>> waiting_threads = |
| 1730 | current_process->GetConditionVariableThreads(condition_variable_addr); | 1730 | current_process->GetConditionVariableThreads(condition_variable_addr); |