summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/scheduler.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* kernel/scheduler: Remove unused parameter to AddThread()Lioncash2019-03-301-1/+1
| | | | | This was made unused in b404fcdf1443b91ac9994c05ad1fe039fcd9675e, but the parameter itself wasn't removed.
* Use MultiLevelQueue instead of old ThreadQueueListFernando Sahmkow2019-03-271-2/+2
|
* kernel/scheduler: Pass in system instance in constructorLioncash2019-03-041-2/+4
| | | | | | | | Avoids directly relying on the global system instance and instead makes an arbitrary system instance an explicit dependency on construction. This also allows removing dependencies on some global accessor functions as well.
* scheduler: Only work steal higher priority threads from other coresZach Hilman2018-12-031-4/+1
|
* scheduler: Add explanations for YieldWith and WithoutLoadBalancingZach Hilman2018-11-221-2/+68
|
* svc: Implement yield types 0 and -1Zach Hilman2018-11-191-0/+6
|
* svc: Implement svcGetInfo command 0xF0000002Lioncash2018-10-261-0/+19
| | | | | | | | | | This retrieves: if (curr_thread == handle_thread) { result = total_thread_ticks + (hardware_tick_count - last_context_switch_ticks); } else if (curr_thread == handle_thread && sub_id == current_core_index) { result = hardware_tick_count - last_context_switch_ticks; }
* kernel/scheduler: Take ARM_Interface instance by reference in the constructorLioncash2018-09-251-2/+2
| | | | | It doesn't make sense to allow a scheduler to be constructed around a null pointer.
* core: Namespace all code in the arm subdirectory under the Core namespaceLioncash2018-08-251-2/+4
| | | | Gets all of these types and interfaces out of the global namespace.
* scheduler: Make HaveReadyThreads() a const member functionLioncash2018-08-121-1/+1
| | | | | This function doesn't modify instance state, so the const qualifier can be added to it.
* kernel: Move object class to its own source filesLioncash2018-08-021-0/+1
| | | | | | General moving to keep kernel object types separate from the direct kernel code. Also essentially a preliminary cleanup before eliminating global kernel state in the kernel code.
* kernel: Remove unnecessary includesLioncash2018-07-311-1/+2
| | | | | Removes unnecessary direct dependencies in some headers and also gets rid of indirect dependencies that were being relied on to be included.
* scheduler: Protect scheduling functions with a global mutex.bunnei2018-05-111-0/+3
|
* scheduler: Cleanup based on PR feedback.bunnei2018-02-191-3/+2
|
* kernel: Add Scheduler, which encapsulates the scheduling loading from Thread module.bunnei2018-02-181-0/+74