diff options
| author | 2020-12-02 18:08:35 -0800 | |
|---|---|---|
| committer | 2020-12-06 00:03:24 -0800 | |
| commit | 9e29e36a784496f7290c03b6a42e400a164a5b1e (patch) | |
| tree | d33cc91b4651b374e0c244be7b7e3b47ef7680fd /src/core/hle/kernel/process.cpp | |
| parent | hle: kernel: physical_core: Clear exclusive state after each run. (diff) | |
| download | yuzu-9e29e36a784496f7290c03b6a42e400a164a5b1e.tar.gz yuzu-9e29e36a784496f7290c03b6a42e400a164a5b1e.tar.xz yuzu-9e29e36a784496f7290c03b6a42e400a164a5b1e.zip | |
hle: kernel: Rewrite scheduler implementation based on Mesopshere.
Diffstat (limited to 'src/core/hle/kernel/process.cpp')
| -rw-r--r-- | src/core/hle/kernel/process.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/core/hle/kernel/process.cpp b/src/core/hle/kernel/process.cpp index b17529dee..238c03a13 100644 --- a/src/core/hle/kernel/process.cpp +++ b/src/core/hle/kernel/process.cpp | |||
| @@ -15,13 +15,13 @@ | |||
| 15 | #include "core/file_sys/program_metadata.h" | 15 | #include "core/file_sys/program_metadata.h" |
| 16 | #include "core/hle/kernel/code_set.h" | 16 | #include "core/hle/kernel/code_set.h" |
| 17 | #include "core/hle/kernel/errors.h" | 17 | #include "core/hle/kernel/errors.h" |
| 18 | #include "core/hle/kernel/k_scheduler.h" | ||
| 18 | #include "core/hle/kernel/kernel.h" | 19 | #include "core/hle/kernel/kernel.h" |
| 19 | #include "core/hle/kernel/memory/memory_block_manager.h" | 20 | #include "core/hle/kernel/memory/memory_block_manager.h" |
| 20 | #include "core/hle/kernel/memory/page_table.h" | 21 | #include "core/hle/kernel/memory/page_table.h" |
| 21 | #include "core/hle/kernel/memory/slab_heap.h" | 22 | #include "core/hle/kernel/memory/slab_heap.h" |
| 22 | #include "core/hle/kernel/process.h" | 23 | #include "core/hle/kernel/process.h" |
| 23 | #include "core/hle/kernel/resource_limit.h" | 24 | #include "core/hle/kernel/resource_limit.h" |
| 24 | #include "core/hle/kernel/scheduler.h" | ||
| 25 | #include "core/hle/kernel/thread.h" | 25 | #include "core/hle/kernel/thread.h" |
| 26 | #include "core/hle/lock.h" | 26 | #include "core/hle/lock.h" |
| 27 | #include "core/memory.h" | 27 | #include "core/memory.h" |
| @@ -314,7 +314,7 @@ void Process::PrepareForTermination() { | |||
| 314 | if (thread->GetOwnerProcess() != this) | 314 | if (thread->GetOwnerProcess() != this) |
| 315 | continue; | 315 | continue; |
| 316 | 316 | ||
| 317 | if (thread.get() == system.CurrentScheduler().GetCurrentThread()) | 317 | if (thread.get() == kernel.CurrentScheduler()->GetCurrentThread()) |
| 318 | continue; | 318 | continue; |
| 319 | 319 | ||
| 320 | // TODO(Subv): When are the other running/ready threads terminated? | 320 | // TODO(Subv): When are the other running/ready threads terminated? |
| @@ -325,7 +325,7 @@ void Process::PrepareForTermination() { | |||
| 325 | } | 325 | } |
| 326 | }; | 326 | }; |
| 327 | 327 | ||
| 328 | stop_threads(system.GlobalScheduler().GetThreadList()); | 328 | stop_threads(system.GlobalSchedulerContext().GetThreadList()); |
| 329 | 329 | ||
| 330 | FreeTLSRegion(tls_region_address); | 330 | FreeTLSRegion(tls_region_address); |
| 331 | tls_region_address = 0; | 331 | tls_region_address = 0; |