bunnei
67051cf10c
hle: kernel: Move ServiceThread ownership to KernelCore.
...
- Fixes a circular dependency which prevented threads from being released on shutdown.
2020-12-29 01:12:39 -08:00
bunnei
b2ef309edb
hle: kernel: service_thread: Add thread name and take weak_ptr of ServerSession.
2020-12-29 01:06:39 -08:00
bunnei
5d4fa58af2
core: hle: kernel: Clear process list on boot.
2020-12-28 21:33:34 -08:00
bunnei
838c266e82
core: kernel: Clear process list earlier.
2020-12-28 16:33:48 -08:00
bunnei
846f35c4ad
hle: kernel: hle_ipc: Remove SleepClientThread.
...
- This was kind of hacky, and no longer is necessary with service threads.
2020-12-28 16:33:48 -08:00
bunnei
3d7b4bfa48
hle: kernel: service_thread: Add parameter for thread pool size.
2020-12-28 16:33:47 -08:00
bunnei
56be5d7ba9
core: hle: server_session: Use separate threads for each service connection.
2020-12-28 16:33:47 -08:00
bunnei
8e1f16e8fa
Merge pull request #5131 from bunnei/scheduler-rewrite
...
Rewrite Kernel scheduler based on Atmosphere
2020-12-20 20:57:54 -08:00
bunnei
a1bc0b56de
Merge pull request #5172 from lioncash/svc-wide
...
svc: Remove unnecessary casts
2020-12-11 17:39:30 -08:00
Lioncash
a4f07e1cc4
svc: Remove unnecessary casts
...
Simplifies and removes some casts. In all cases, these were generally
widening from a 32-bit unsigned type to a 64-bit unsigned type, so no
information would be lost from the conversion.
2020-12-08 15:42:10 -05:00
Lioncash
8f135703dc
core: Remove unnecessary enum casts in log calls
...
Follows the video core PR. fmt doesn't require casts for enum classes
anymore, so we can remove quite a few casts.
2020-12-07 23:02:23 -05:00
bunnei
9ba99af200
Merge pull request #5148 from comex/xx-unused-fields
...
core: Mark unused fields as [[maybe_unused]]
2020-12-06 22:33:00 -08:00
LC
60ba2d11df
Merge pull request #5136 from lioncash/video-shadow3
...
video_core: Resolve more variable shadowing scenarios pt.3
2020-12-07 00:06:53 -05:00
comex
086238f1ac
Fix "explicitly defaulted but implicitly deleted" warning
...
`PhysicalCore`'s move assignment operator was declared as `= default`,
but was implicitly deleted because `PhysicalCore` has fields
of reference type. Switch to explicitly deleting it to avoid a Clang
warning.
The move *constructor* is still defaulted, and is required to exist due
to the use of `std::vector<PhysicalCore>`.
2020-12-06 19:02:04 -05:00
comex
cf99d67e66
core: Mark unused fields as [[maybe_unused]]
2020-12-06 18:36:10 -05:00
bunnei
144e143a40
hle: kernel: Process: Various style fixes based on code review feedback.
2020-12-06 00:27:13 -08:00
bunnei
37b1919b4d
hle: kernel: Thread: Various style fixes based on code review feedback.
2020-12-06 00:27:13 -08:00
bunnei
f83f0ef61b
hle: kernel: KScopedSchedulerLockAndSleep: Various style fixes based on code review feedback.
2020-12-06 00:27:13 -08:00
bunnei
85c01ee860
hle: kernel: KScopedLock: Various style fixes based on code review feedback.
2020-12-06 00:27:13 -08:00
bunnei
e3e254b713
hle: kernel: KAbstractSchedulerLock: Various style fixes based on code review feedback.
2020-12-06 00:27:13 -08:00
bunnei
2033f0a1a3
hle: kernel: KScheduler: Various style fixes based on code review feedback.
2020-12-06 00:27:13 -08:00
bunnei
dfacfa12d3
hle: kernel: KPriorityQueue: Various style fixes based on code review feedback.
2020-12-06 00:27:13 -08:00
bunnei
266d16c350
hle: kernel: KAffinityMask: Various style fixes based on code review feedback.
2020-12-06 00:27:13 -08:00
bunnei
ddaecce2f5
hle: kernel: GlobalSchedulerContext: Various style fixes based on code review feedback.
2020-12-06 00:27:13 -08:00
bunnei
ea30e22ef1
hle: kernel: Use C++ style comments in KScheduler, etc.
2020-12-06 00:03:24 -08:00
bunnei
c3c09d9a35
kernel: KScopedSchedulerLockAndSleep: Remove unused ctor.
2020-12-06 00:03:24 -08:00
bunnei
31243d2b7a
kernel: time_manager: Add missing lock guards.
2020-12-06 00:03:24 -08:00
bunnei
de522657dd
hle: kernel: Migrate to KScopedSchedulerLock.
2020-12-06 00:03:24 -08:00
bunnei
61e017a026
hle: kernel: Separate KScopedSchedulerLockAndSleep from k_scheduler.
2020-12-06 00:03:24 -08:00
bunnei
4f16c961c9
hle: kernel: Separate KScheduler from GlobalSchedulerContext class.
2020-12-06 00:03:24 -08:00
bunnei
039844bbb9
hle: kernel: Rewrite scheduler implementation based on Mesopshere.
2020-12-06 00:03:24 -08:00
bunnei
abc079aca1
hle: kernel: physical_core: Clear exclusive state after each run.
...
- This is closer to pre-multicore behavior, and works a bit better.
2020-12-06 00:03:24 -08:00
bunnei
1ffab4019b
hle: kernel: Port KAbstractSchedulerLock from Mesosphere.
2020-12-06 00:03:24 -08:00
bunnei
0c9f4d749c
hle: kernel: svc: Remove reschedule on svcBreak.
...
- This breaks things, and is unnecessary, since emulation will be done at this point.
2020-12-06 00:03:24 -08:00
bunnei
cd66ac3af5
hle: kernel: process: Add schedule count tracking, to be used for yield impl.
2020-12-06 00:03:24 -08:00
bunnei
5f00b01a5d
hle: kernel: svc: Remove unnecessary hack in svcSleep.
2020-12-06 00:03:24 -08:00
bunnei
11e7b74858
common: Port KPriorityQueue from Mesosphere.
2020-12-06 00:03:24 -08:00
bunnei
ba09b4d69d
hle: kernel: Port KAffinityMask from Mesosphere.
2020-12-06 00:03:24 -08:00
Lioncash
5db4785535
video_core: Resolve more variable shadowing scenarios pt.3
...
Cleans out the rest of the occurrences of variable shadowing and makes
any further occurrences of shadowing compiler errors.
2020-12-05 16:02:23 -05:00
bunnei
3edaafa295
kernel: scheduler: Minor cleanup to remove duplicated code.
2020-11-29 01:31:52 -08:00
bunnei
64cb411dda
kernel: time_manager: Protect access with a mutex.
2020-11-29 01:31:52 -08:00
bunnei
b2de57e93e
hle: kernel: thread: Remove unused "Running" state.
2020-11-29 01:31:52 -08:00
bunnei
a5b73195c9
core: arm: Implement InvalidateCacheRange for CPU cache invalidation.
2020-11-29 01:31:52 -08:00
bunnei
5114c6f3ac
hle: kernel: time_manager: Avoid a crash on process exit.
2020-11-29 01:31:51 -08:00
bunnei
026a8dd832
hle: kernel: AddressArbiter: Remove unused code.
2020-11-29 01:31:51 -08:00
bunnei
e7c2a66ecd
hle: kernel: SynchronizationObject: Use atomic_bool for is_signaled.
2020-11-29 01:31:51 -08:00
bunnei
b92d8acd2f
common: fiber: Use boost::context instead of native fibers on Windows.
2020-11-29 01:31:51 -08:00
bunnei
aaffe73f47
hle: kernel: multicore: Replace n-JITs impl. with 4 JITs.
2020-11-29 01:31:51 -08:00
Lioncash
b038dcf23c
svc: Remove unnecessary [[maybe_unused]] tag
...
The parameter is used in this function, so this suppression isn't
necessary.
2020-11-23 10:17:20 -05:00
Lioncash
e7fe020ace
ipc_helpers: Remove usage of the global system instance
...
Resolves numerous deprecation warnings throughout the codebase due to
inclusion of this header. Now building core should be significantly less
noisy (and also relying on less global state).
This also uncovered quite a few modules that were relying on indirect
includes, which have also been fixed.
2020-11-08 15:58:11 -05:00