07e3c56f0d
Merge pull request #8532 from liamwhite/fiber-supplements
...
common/fiber: make fibers easier to use
2022-07-05 18:20:39 -04:00
ed0319cfed
common/fiber: make fibers easier to use
2022-07-02 12:33:49 -04:00
2c1e2c63c3
cpu_manager: properly check idle on return from preemption
2022-06-30 16:54:05 -04:00
2c56e94702
kernel: make current thread pointer thread local
2022-06-23 00:28:00 -04:00
99ceb03a1c
general: Convert source file copyright comments over to SPDX
...
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-23 05:55:32 -04:00
3bd5d4b6f8
core: hle: kernel: Ensure idle threads are closed before destroying scheduler.
2021-12-06 16:39:16 -08:00
da6673e79a
SVC: Implement svcInfo:IdleTickCount
...
Used by the Witcher 3
2021-10-16 20:33:44 +02:00
73666fb262
general: Update style to clang-format-12
2021-09-24 15:52:05 -04:00
0c8594b225
Revert "kernel: Various improvements to scheduler"
2021-08-25 20:59:28 -07:00
2b9560428b
core: hle: kernel: Ensure idle threads are closed before destroying scheduler.
2021-08-07 12:18:47 -07:00
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.
2021-05-16 03:43:16 -04:00
2f62bae9e3
kernel: Eliminate variable shadowing
...
Now that the large kernel refactor is merged, we can eliminate the
remaining variable shadowing cases.
2021-05-08 12:33:26 -04:00
0536004d91
fixup! hle: kernel: Rename Process to KProcess.
2021-05-05 16:40:53 -07:00
2a7eff57a8
hle: kernel: Rename Process to KProcess.
2021-05-05 16:40:52 -07:00
89edbe8aa2
hle: kernel: Refactor several threads/events/sharedmemory to use slab heaps.
2021-05-05 16:40:51 -07:00
0eeecde67c
hle: kernel: Migrate idle threads.
2021-05-05 16:40:50 -07:00
b04877dd95
Merge pull request #6099 from bunnei/derive-mem
...
Kernel Rework: Derive memory regions from board layout.
2021-04-10 00:02:52 -07:00
530a5a1d09
Amend bizarre clang-format suggestions
2021-04-07 01:52:08 -04:00
97e2604575
k_scheduler: Mark KScopedSchedulerLock as [[nodiscard]]
...
Prevents logic bugs like:
KScopedSchedulerLock{kernel};
instead of:
KScopedSchedulerLock lk{kernel};
from slipping through.
2021-04-07 01:19:29 -04:00
5872561077
hle: kernel: Migrate some code from Common::SpinLock to KSpinLock.
2021-03-21 14:45:02 -07:00
a5ab85ac37
Revert "core: Switch to unique_ptr for usage of Common::Fiber."
2021-03-05 17:08:17 -08:00
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.
2021-02-27 11:56:04 -08:00
6e953f7f02
hle: kernel: Allocate a dummy KThread for each host thread, and use it for scheduling.
2021-01-28 21:42:26 -08:00
37f74d8741
hle: kernel: k_scheduler: Use atomics for current_thread, etc.
2021-01-28 21:42:26 -08:00
cdd14b03e5
hle: kernel: Recode implementation of KThread to be more accurate.
2021-01-28 21:42:26 -08:00
c0d3aef28c
core: hle: kernel: Rename Thread to KThread.
2021-01-28 21:42:25 -08:00
f12701b303
hle: kernel: k_scheduler: Cleanup OnThreadPriorityChanged.
2021-01-11 14:23:16 -08:00
c3c43e32fc
hle: kernel: thread: Replace ThreadStatus/ThreadSchedStatus with a single ThreadState.
...
- This is how the real kernel works, and is more accurate and simpler.
2021-01-11 14:23:16 -08:00
960500cfd2
hle: kernel: KScheduler: Various style fixes based on code review feedback.
2020-12-06 00:27:13 -08:00
ccce6cb3be
hle: kernel: Migrate to KScopedSchedulerLock.
2020-12-06 00:03:24 -08:00
4756cb203e
hle: kernel: Separate KScopedSchedulerLockAndSleep from k_scheduler.
2020-12-06 00:03:24 -08:00
8d3e06349e
hle: kernel: Separate KScheduler from GlobalSchedulerContext class.
2020-12-06 00:03:24 -08:00
9e29e36a78
hle: kernel: Rewrite scheduler implementation based on Mesopshere.
2020-12-06 00:03:24 -08:00