aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel
AgeCommit message (Collapse)Author
2021-09-29Fix KShareMemory object leakFeng Chen
2021-09-25Fix KScopedAutoObject object leak when SendSyncRequestFeng Chen
2021-09-11kernel: Add missing <functional> includeMorph
2021-08-25Revert "kernel: Various improvements to scheduler"bunnei
2021-08-24Merge pull request #6878 from BreadFish64/optimize-GetHostThreadIDAmeer J
kernel: Optimize GetHostThreadID
2021-08-19Fix check is thread current in GetThreadContextValeri
Misplaced break made it only check for the first core.
2021-08-16kernel: Optimize GetHostThreadIDBreadFish64
2021-08-14core: hle: kernel: Disable dispatch count tracking on single core.bunnei
- This would have limited value, and would be a mess to handle properly.
2021-08-07core: hle: kernel: k_thread: Mark KScopedDisableDispatch as nodiscard.bunnei
2021-08-07core: hle: kernel: k_auto_object: Add GetName method.bunnei
- Useful purely for debugging.
2021-08-07core: hle: kernel: DisableDispatch on suspend threads.bunnei
2021-08-07core: hle: kernel: k_scheduler: Improve DisableScheduling and EnableScheduling.bunnei
2021-08-07core: hle: kernel: Use CurrentPhysicalCoreIndex as appropriate.bunnei
2021-08-07core: hle: kernel: k_scheduler: Remove unnecessary MakeCurrentProcess.bunnei
2021-08-07core: hle: kernel: k_scheduler: Improve ScheduleImpl.bunnei
2021-08-07core: hle: kernel: k_scheduler: Improve Unload.bunnei
2021-08-07core: hle: kernel: k_process: DisableDispatch on main thread.bunnei
2021-08-07core: hle: kernel: k_handle_table: Use KScopedDisableDispatch as necessary.bunnei
2021-08-07core: hle: kernel: k_thread: Add KScopedDisableDispatch.bunnei
2021-08-07core: hle: kernel: Ensure idle threads are closed before destroying scheduler.bunnei
2021-08-07core: hle: kernel: Reflect non-emulated threads as core 3.bunnei
2021-07-20hle: kernel: svc: Remove part of ExitProcess.bunnei
- ExitProcess is not actually implemented either way, and this needs more work before we implement.
2021-07-20hle: kernel: Track and release server sessions, and protect methods with locks.bunnei
2021-07-20hle: kernel: KProcess: Change process termination assert to a warning.bunnei
- Since we do not implement multiprocess right now, this should not be a crashing assert.
2021-07-20hle: kernel: Ensure current running process is closed.bunnei
2021-07-20hle: kernel: Ensure global handle table is finalized before closing.bunnei
2021-07-20kernel: svc: ConnectToNamedPort: Close extra reference to port.bunnei
2021-07-20hle: kernel: k_process: Close the handle table on shutdown.bunnei
2021-07-20hle: kernel: k_process: Close main thread reference after it is inserted ↵bunnei
into handle table.
2021-07-20hle: kernel: Ensure global handle table is initialized.bunnei
2021-07-20hle: kernel: Provide methods for tracking dangling kernel objects.bunnei
2021-06-24common: Replace common_sizes into user-literalsWunkolo
Removes common_sizes.h in favor of having `_KiB`, `_MiB`, `_GiB`, etc user-literals within literals.h. To keep the global namespace clean, users will have to use: ``` using namespace Common::Literals; ``` to access these literals.
2021-06-18kernel: Fix missing peak set in KResourceLimit::SetLimitValueMorph
2021-06-11kernel: Unconditionally set thread state when appropriateMorph
2021-06-11kernel: KLightConditionVariable: Update implementation to 12.xMorph
Updates the implementation of KLightConditionVariable to FW 12.x
2021-06-09hle: kernel: KClientPort: Add an assert for session count.bunnei
- Prevents us from over decrementing num_sessions.
2021-06-09hle: service: sm: Fix GetService setup of session & port.bunnei
2021-06-09hle: kernel: KServerSession: Fix client disconnected.bunnei
- Prevents a cloned session's handler from being overwritten by another disconnected session. - Fixes session handler nullptr asserts with Pokemon Sword & Shield.
2021-06-09kernel: svc: Add missing error check to CancelSynchronization.bunnei
- Avoids a potential crash if the handle is invalid, and also makes this code accurate to real kernel behavior.
2021-06-08hle: kernel: KServerSession: Work-around scenario where session is closed ↵bunnei
too early.
2021-06-07hle: kernel: hle_ipc: Ensure SessionRequestHandler is valid.bunnei
2021-06-07hle: kernel: Remove service thread manager and use weak_ptr.bunnei
- We no longer need to queue up service threads to be destroyed. - Fixes a race condition where a thread could be destroyed too early, which caused a crash in Pokemon Sword/Shield.
2021-06-06hle: kernel: KServerSession: Use ASSERT_MSG where appropriate.bunnei
2021-06-06hle: kernel: k_server_session: Return service thread by strong pointer.bunnei
2021-06-06hle: kernel: k_server_session: Ensure service thread is valid before ↵bunnei
dereference.
2021-06-06hle: kernel: hle_ipc: Use default destructor for SessionRequestManager.bunnei
2021-06-06hle: kernel: KAutoObjectWithListContainer: Use boost::instrusive::rbtree.bunnei
- Fixes some crashes introduced by our common intrusive red/black tree impl.
2021-06-04hle: kernel: Refactor to allocate a ServiceThread per service handler.bunnei
- Previously, we would allocate a thread per session, which adds new threads on CloneCurrentObject. - This results in race conditions with N sessions queuing requests to the same service interface. - Fixes Pokken Tournament DX crashes/softlocks, which were regressed by #6347.
2021-06-02general: Replace RESULT_UNKNOWN with ResultUnknownMorph
Transition to PascalCase for result names.
2021-06-02general: Replace RESULT_SUCCESS with ResultSuccessMorph
Transition to PascalCase for result names.