diff options
| author | 2020-03-08 12:51:24 -0400 | |
|---|---|---|
| committer | 2020-06-27 11:35:40 -0400 | |
| commit | 6515c6e8c699584528486341579cf3a8dde3eea4 (patch) | |
| tree | 1663248cbd02cc0db108ed18feef5a994e44d63d /src/core/hle/kernel/scheduler.cpp | |
| parent | Scheduler: Correct yields. (diff) | |
| download | yuzu-6515c6e8c699584528486341579cf3a8dde3eea4.tar.gz yuzu-6515c6e8c699584528486341579cf3a8dde3eea4.tar.xz yuzu-6515c6e8c699584528486341579cf3a8dde3eea4.zip | |
Kernel: Fixes, corrections and asserts to scheduler and different svcs.
Diffstat (limited to 'src/core/hle/kernel/scheduler.cpp')
| -rw-r--r-- | src/core/hle/kernel/scheduler.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/core/hle/kernel/scheduler.cpp b/src/core/hle/kernel/scheduler.cpp index ab17204bb..5322f0aae 100644 --- a/src/core/hle/kernel/scheduler.cpp +++ b/src/core/hle/kernel/scheduler.cpp | |||
| @@ -133,6 +133,7 @@ u32 GlobalScheduler::SelectThreads() { | |||
| 133 | u32 cores_needing_context_switch{}; | 133 | u32 cores_needing_context_switch{}; |
| 134 | for (u32 core = 0; core < Core::Hardware::NUM_CPU_CORES; core++) { | 134 | for (u32 core = 0; core < Core::Hardware::NUM_CPU_CORES; core++) { |
| 135 | Scheduler& sched = kernel.Scheduler(core); | 135 | Scheduler& sched = kernel.Scheduler(core); |
| 136 | ASSERT(top_threads[core] == nullptr || top_threads[core]->GetProcessorID() == core); | ||
| 136 | if (update_thread(top_threads[core], sched)) { | 137 | if (update_thread(top_threads[core], sched)) { |
| 137 | cores_needing_context_switch |= (1ul << core); | 138 | cores_needing_context_switch |= (1ul << core); |
| 138 | } | 139 | } |
| @@ -244,7 +245,7 @@ bool GlobalScheduler::YieldThreadAndWaitForLoadBalancing(Thread* yielding_thread | |||
| 244 | winner = yielding_thread; | 245 | winner = yielding_thread; |
| 245 | } | 246 | } |
| 246 | } else { | 247 | } else { |
| 247 | winner = scheduled_queue[i].front(); | 248 | winner = scheduled_queue[core_id].front(); |
| 248 | } | 249 | } |
| 249 | 250 | ||
| 250 | if (kernel.GetCurrentHostThreadID() != core_id) { | 251 | if (kernel.GetCurrentHostThreadID() != core_id) { |