bunnei
284015dfd7
core: hle: kernel: k_scheduler: Improve DisableScheduling and EnableScheduling.
4 years ago
bunnei
629f9274ac
core: hle: kernel: k_scheduler: Remove unnecessary MakeCurrentProcess.
4 years ago
bunnei
13c82d042f
core: hle: kernel: k_scheduler: Improve ScheduleImpl.
4 years ago
bunnei
f412d2027a
core: hle: kernel: k_scheduler: Improve Unload.
4 years ago
bunnei
3bd5d4b6f8
core: hle: kernel: Ensure idle threads are closed before destroying scheduler.
4 years ago
bunnei
0c8594b225
Revert "kernel: Various improvements to scheduler"
4 years ago
bunnei
1798c3b6b0
core: hle: kernel: k_scheduler: Improve DisableScheduling and EnableScheduling.
4 years ago
bunnei
d1c502720d
core: hle: kernel: k_scheduler: Remove unnecessary MakeCurrentProcess.
4 years ago
bunnei
77ad64b97d
core: hle: kernel: k_scheduler: Improve ScheduleImpl.
4 years ago
bunnei
bedcf19710
core: hle: kernel: k_scheduler: Improve Unload.
4 years ago
bunnei
2b9560428b
core: hle: kernel: Ensure idle threads are closed before destroying scheduler.
4 years ago
Markus Wick
3d2e80daed
core/arm_interface: Call SVC after end of dynarmic block.
So we can modify all of dynarmic states within SVC without ExceptionalExit.
Especially as the ExceptionalExit hack is dropped on upstream dynarmic.
5 years ago
Lioncash
9a07ed53eb
core: Make variable shadowing a compile-time error
Now that we have most of core free of shadowing, we can enable the
warning as an error to catch anything that may be remaining and also
eliminate this class of logic bug entirely.
5 years ago
Lioncash
2f62bae9e3
kernel: Eliminate variable shadowing
Now that the large kernel refactor is merged, we can eliminate the
remaining variable shadowing cases.
5 years ago
bunnei
2a7eff57a8
hle: kernel: Rename Process to KProcess.
5 years ago
bunnei
89edbe8aa2
hle: kernel: Refactor several threads/events/sharedmemory to use slab heaps.
5 years ago
bunnei
b6156e735c
hle: kernel: Move slab heap management to KernelCore.
5 years ago
bunnei
ab704acab8
hle: kernel: Ensure all kernel objects with KAutoObject are properly created.
5 years ago
bunnei
0eeecde67c
hle: kernel: Migrate idle threads.
5 years ago
bunnei
5872561077
hle: kernel: Migrate some code from Common::SpinLock to KSpinLock.
5 years ago
bunnei
8f7eb194af
common: Fiber: use a reference for YieldTo.
- Fixes another small leak.
5 years ago
bunnei
47af34003b
hle: kernel: KThread: Rework dummy threads & fix memory leak.
- Dummy threads are created on thread local storage for all host threads.
- Fixes a leak by removing creation of fibers, which are not applicable here.
5 years ago
bunnei
a5ab85ac37
Revert "core: Switch to unique_ptr for usage of Common::Fiber."
5 years ago
bunnei
51fb0a6f96
core: Switch to unique_ptr for usage of Common::Fiber.
- With using unique_ptr instead of shared_ptr, we have more explicit ownership of the context.
- Fixes a memory leak due to circular reference of the shared pointer.
5 years ago
bunnei
6e953f7f02
hle: kernel: Allocate a dummy KThread for each host thread, and use it for scheduling.
5 years ago
bunnei
37f74d8741
hle: kernel: k_scheduler: Use atomics for current_thread, etc.
5 years ago
bunnei
f6b10fad63
hle: kernel: k_scheduler: Fix for single core mode.
5 years ago
bunnei
ca78f77827
hle: kernel: KScheduler: Introduce thread context_guard.
5 years ago
bunnei
cdd14b03e5
hle: kernel: Recode implementation of KThread to be more accurate.
5 years ago
bunnei
4dbf3f4880
hle: kernel: KThread: Clean up thread priorities.
5 years ago
bunnei
1e55498110
hle: kernel: KThread: Reorganize thread priority defaults.
5 years ago
bunnei
0530292b97
hle: kernel: KThread: Fix ThreadType definition.
5 years ago
bunnei
eea346ba8e
hle: kernel: KThread: Remove thread types that do not exist.
5 years ago
bunnei
c0d3aef28c
core: hle: kernel: Rename Thread to KThread.
5 years ago
Lioncash
8620de6b20
common/bit_util: Replace CLZ/CTZ operations with standardized ones
Makes for less code that we need to maintain.
5 years ago
bunnei
f12701b303
hle: kernel: k_scheduler: Cleanup OnThreadPriorityChanged.
5 years ago
bunnei
c3c43e32fc
hle: kernel: thread: Replace ThreadStatus/ThreadSchedStatus with a single ThreadState.
- This is how the real kernel works, and is more accurate and simpler.
5 years ago
bunnei
35c3c078e3
core: hle: kernel: Update KSynchronizationObject.
5 years ago
bunnei
960500cfd2
hle: kernel: KScheduler: Various style fixes based on code review feedback.
5 years ago
bunnei
b1326d9230
hle: kernel: Use C++ style comments in KScheduler, etc.
5 years ago
bunnei
ccce6cb3be
hle: kernel: Migrate to KScopedSchedulerLock.
5 years ago
bunnei
4756cb203e
hle: kernel: Separate KScopedSchedulerLockAndSleep from k_scheduler.
5 years ago
bunnei
8d3e06349e
hle: kernel: Separate KScheduler from GlobalSchedulerContext class.
5 years ago
bunnei
9e29e36a78
hle: kernel: Rewrite scheduler implementation based on Mesopshere.
5 years ago