bunnei
11f9080d2e
hle: kernel: Migrate KSharedMemory to KAutoObject.
5 years ago
bunnei
7a6bfbde24
hle: kernel: Migrate KProcess to KAutoObject.
5 years ago
bunnei
a4a27a1ef2
hle: kernel: Migrate more of KThread to KAutoObject.
5 years ago
bunnei
07939c59a6
hle: kernel: Refactor out various KThread std::shared_ptr usage.
5 years ago
ameerj
931ef0f8a3
k_resource_limit: Minor cleanup of member variables/headers
5 years ago
ameerj
575eb4f156
kernel/process: Replace process resource limit instance with the kernel's resource limit
This commit addresses the inaccurate behavior of kernel processes creating their own resource limit, rather than utilizing the kernel's system-wide resource limit instance.
5 years ago
ameerj
c7a0ebbba7
kernel: Increase event and session counts
12.x increased the number of available sessions and event resource counts
5 years ago
bunnei
e8dd3eca47
hle: kernel: Initialize preemption task after schedulers.
- Fixes a startup crash that occurs if CoreTiming tries to preempt before kernel initialization completes.
5 years ago
bunnei
50cdb650af
hle: kernel: Breakup InitializeMemoryLayout.
5 years ago
bunnei
9fe89ad30d
common: common_sizes: Move sizes to the Common namespace.
5 years ago
bunnei
dc2507fce2
hle: kernel: Remove unused variable.
5 years ago
bunnei
79ca47ab3a
hle: kernel: k_memory_layout: Derive memory regions based on board layout.
5 years ago
bunnei
3000ebbf08
hle: kernel: Move KMemoryRegion to its own module and update.
5 years ago
bunnei
75519d107f
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
ameerj
0d9fb9ca27
kernel: Fix resource release exception on exit
After rewriting the resource limit, objects releasing reserved resources require a live kernel instance.
This commit fixes exceptions that occur due to the kernel being destroyed before some objects released their resources, allowing for a graceful exit.
5 years ago
bunnei
c21aa2479a
hle: kernel: Migrate MemoryManager to KMemoryManager.
5 years ago
bunnei
a4c5e6d964
hle: kernel: Migrate to KMemoryBlock, KMemoryBlockManager, and others.
5 years ago
bunnei
5702047b65
hle: kernel: Migrate SlabHeap to KSlabHeap.
5 years ago
bunnei
8c9e87ab66
hle: kernel: Migrate MemoryLayout to KMemoryLayout.
5 years ago
bunnei
f8d8755776
hle: kernel: Rename SharedMemory to KSharedMemory.
5 years ago
ameerj
faae6b5595
kernel: More accurately reserve and release resources
5 years ago
Chloe
e62886ead0
kernel: Unify result codes ( #5890 )
* kernel: Unify result codes
Drop the usage of ERR_NAME convention in kernel for ResultName. Removed seperation between svc_results.h & errors.h as we mainly include both most of the time anyways.
* oops
* rename errors to svc_results
5 years ago
Chloe Marcec
6ff08eb44f
Simplify limitableresource names
5 years ago
Chloe Marcec
68a52e9050
kernel: Rewrite resource limit to be more accurate
Matches closer to hardware
5 years ago
bunnei
1a1bef5154
hle: kernel: threading: Fix bug with host thread naming.
5 years ago
bunnei
cf3a05cf8c
hle: kernel: Allocate a dummy KThread for each host thread, and use it for scheduling.
5 years ago
bunnei
67d28075dd
kernel: Fix build errors.
5 years ago
bunnei
f34dd04d09
hle: kernel: Recode implementation of KThread to be more accurate.
5 years ago
bunnei
4440a59cb6
kernel: k_light_lock: Simplify EmuThreadHandle implementation.
5 years ago
bunnei
eb396cd021
hle: kernel: KThread: Fix ThreadType definition.
5 years ago
bunnei
d49e29d866
hle: kernel: Move single core "phantom mode" out of KThread.
- This is a workaround that does not belong in a kernel primitive.
5 years ago
bunnei
e74f682506
hle: kernel: KThread: Remove thread types that do not exist.
5 years ago
bunnei
3d70b4a4ea
core: hle: kernel: Rename Thread to KThread.
5 years ago
bunnei
e89be18c79
hle: kernel: thread: Preserve thread wait reason for debugging only.
- This is decoupled from core functionality and used for debugging only.
5 years ago
bunnei
818ff3901a
hle: kernel: Rename thread "status" to "state".
5 years ago
bunnei
9744afa8b1
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
2feb4d56e9
core: hle: kernel: Update KSynchronizationObject.
5 years ago
bunnei
407d3b7374
hle: kernel: Manage service threads on another thread.
- This is to allow service threads to defer destruction of themselves.
5 years ago
bunnei
127bb064f7
hle: kernel: Manage host thread IDs using TLS.
- Avoids the need to have a large map of host to guest thread IDs.
5 years ago
bunnei
67051cf10c
hle: kernel: Move ServiceThread ownership to KernelCore.
- Fixes a circular dependency which prevented threads from being released on shutdown.
5 years ago
bunnei
5d4fa58af2
core: hle: kernel: Clear process list on boot.
5 years ago
bunnei
838c266e82
core: kernel: Clear process list earlier.
5 years ago
bunnei
56be5d7ba9
core: hle: server_session: Use separate threads for each service connection.
5 years ago
bunnei
de522657dd
hle: kernel: Migrate to KScopedSchedulerLock.
5 years ago
bunnei
039844bbb9
hle: kernel: Rewrite scheduler implementation based on Mesopshere.
5 years ago
bunnei
a5b73195c9
core: arm: Implement InvalidateCacheRange for CPU cache invalidation.
5 years ago
bunnei
b92d8acd2f
common: fiber: Use boost::context instead of native fibers on Windows.
5 years ago
bunnei
aaffe73f47
hle: kernel: multicore: Replace n-JITs impl. with 4 JITs.
5 years ago
ReinUsesLisp
1a1ca86eb5
hle/kernel: Remove unused registered_core_threads to fix data races
This member was only used on asserts and it triggered data races.
Remove it to fix them.
5 years ago
bunnei
deb3536936
Revert "core: Fix clang build"
5 years ago