bunnei
b7535cd853
core: hle: kernel: k_process: Remove handle table finalize, reset page table.
4 years ago
bunnei
2b881f4ccc
core: hle: kernel: k_process: Implement thread local storage accurately.
4 years ago
bunnei
09adf10025
core: hle: kernel: KProcess: Pass in KResourceLimit on process creation.
- This allows us to have a resource limit per process, rather than use the global system resource limit.
4 years ago
bunnei
a2731424a6
hle: kernel: KThread: Improve Increment/Decrement RunningThreadCount.
- Previously implementation was incorrect, and would occasionally underflow.
4 years ago
bunnei
18969b5d8e
core: hle: kernel: KProcess: Integrate with KWorkerTask and add unimplemented DoWorkerTaskImpl.
4 years ago
bunnei
d45b65b4d9
hle: kernel: k_page_table: Update SetProcessMemoryPermission.
4 years ago
bunnei
84a61db25b
hle: kernel: k_page_table: ReadAndWrite -> UserReadWrite.
4 years ago
bunnei
b12695ddc4
core: hle: kernel: Implement thread pinning.
- We largely had the mechanics in place for thread pinning, this change hooks these up.
- Validated with tests https://github.com/Atmosphere-NX/Atmosphere/blob/master/tests/TestSvc/source/test_thread_pinning.cpp .
4 years ago
bunnei
714dcea191
core: hle: kernel: Updated implementation of svcSetHeapSize.
- Updates our svcSetHeapSize with latest HOS, furthermore allowing heap size to properly be extended/shrunk.
- Validated with tests https://github.com/Atmosphere-NX/Atmosphere/blob/master/tests/TestSvc/source/test_set_heap_size.cpp .
4 years ago
bunnei
5192e8e092
core: hle: Remove global HLE lock.
- This was added early on as a hack to protect against some concurrency issues.
- It's not clear that this serves any purpose anymore, and if it does, individual components should be fixed rather than using a global recursive mutex.
4 years ago
bunnei
8fc7d6e631
hle: kernel: KProcess: Improvements for thread pinning.
4 years ago
bunnei
3ca8aca719
core: hle: kernel: k_process: DisableDispatch on main thread.
4 years ago
Morph
d9bfc2d546
kernel: KPageTable: Rename SetCodeMemoryPermission to SetProcessMemoryPermission
4 years ago
Feng Chen
60df1f9030
Fix dangling kernel objects when exiting
4 years ago
Feng Chen
38fc397b0f
Fix KShareMemory object leak
4 years ago
bunnei
5e600cba3a
Revert "kernel: Various improvements to scheduler"
4 years ago
bunnei
cba49de65b
core: hle: kernel: k_process: DisableDispatch on main thread.
4 years ago
bunnei
179243473b
hle: kernel: KProcess: Change process termination assert to a warning.
- Since we do not implement multiprocess right now, this should not be a crashing assert.
5 years ago
bunnei
66da530a81
hle: kernel: k_process: Close the handle table on shutdown.
5 years ago
bunnei
d144950f11
hle: kernel: k_process: Close main thread reference after it is inserted into handle table.
5 years ago
Morph
006ca28fc8
kernel: Unconditionally set thread state when appropriate
5 years ago
Morph
7ebc38a6d1
general: Replace RESULT_SUCCESS with ResultSuccess
Transition to PascalCase for result names.
5 years ago
Lioncash
e019da0487
kernel: Eliminate variable shadowing
Now that the large kernel refactor is merged, we can eliminate the
remaining variable shadowing cases.
5 years ago
bunnei
47224d3864
hle: kernel: Migrate to KHandleTable.
5 years ago
bunnei
95fbbf3041
hle: kernel: Improve MapSharedMemory and implement UnmapSharedMemory.
5 years ago
bunnei
ad048de3d6
hle: kernel: Rename Process to KProcess.
5 years ago
bunnei
22a67a4627
hle: kernel: Migrate KResourceLimit to KAutoObject.
5 years ago
bunnei
b6c0ce8781
hle: kernel: svc_results: Update naming..
5 years ago
bunnei
715978756e
hle: kernel: Refactor several threads/events/sharedmemory to use slab heaps.
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
7a76bc30fa
common: Move settings to common from core.
- Removes a dependency on core and input_common from common.
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
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
bunnei
5dbcaa2970
hle: kernel: Migrate PageHeap/PageTable to KPageHeap/KPageTable.
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
ameerj
faae6b5595
kernel: More accurately reserve and release resources
5 years ago
ameerj
48b09cc56d
kernel: KScopedReservation implementation
This implements KScopedReservation, allowing resource limit reservations to be more HW accurate, and release upon failure without requiring too many conditionals.
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
bunnei
9c2719d86f
hle: kernel: svc: Cleanup KEvent/KReadableEvent/KWritableEvent SVCs.
5 years ago
Chloe Marcec
6ff08eb44f
Simplify limitableresource names
5 years ago
Chloe Marcec
a69befa745
Move to GetGlobalTimeNs, fix GetTotalPhysicalMemoryAvailable
5 years ago
Chloe Marcec
68a52e9050
kernel: Rewrite resource limit to be more accurate
Matches closer to hardware
5 years ago
bunnei
38ae7c53c0
hle: kernel: process: Add state lock.
5 years ago
bunnei
f34dd04d09
hle: kernel: Recode implementation of KThread to be more accurate.
5 years ago
bunnei
4ba9d6f969
hle: kernel: KThread: Clean up thread priorities.
5 years ago
bunnei
eb396cd021
hle: kernel: KThread: Fix ThreadType definition.
5 years ago
bunnei
3d70b4a4ea
core: hle: kernel: Rename Thread to KThread.
5 years ago
bunnei
e5cfd63ba4
core: hle: Integrate new KConditionVariable and KAddressArbiter implementations.
5 years ago