aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel
AgeCommit message (Collapse)Author
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.
2021-05-29Merge pull request #6387 from lioncash/class-tokenbunnei
k_class_token: Use variable templates where applicable
2021-05-29k_class_token: Use variable templates where applicableLioncash
Same behavior, less code.
2021-05-29Merge pull request #6384 from lioncash/virtualbunnei
kernel: Add missing override specifiers
2021-05-29Merge pull request #6382 from lioncash/nullbunnei
k_thread: Move dereference after null check in Initialize()
2021-05-29Merge pull request #6373 from bunnei/use-slabheap-tlsbunnei
hle: kernel: KSlabHeap: Allow host or guest allocations.
2021-05-29kernel: Add missing override specifiersLioncash
Over the course of the kernel refactoring a tiny bit of missing overrides slipped through review, so we can add these. While we're at it, we can remove redundant virtual keywords where applicable as well.
2021-05-29Fix two GCC 11 warnings: Unneeded copies.Markus Wick
std::move created an unneeded copy. iterating without reference also created copies.
2021-05-29k_thread: Move dereference after null check in Initialize()Lioncash
Prevents a -Wnonnull warning on GCC.
2021-05-28hle: kernel: KSlabHeap: Allow host or guest allocations.bunnei
- Use host allocations for kernel memory, as this is not properly emulated yet. - Use guest allocations for TLS, as this needs to be backed by DeviceMemory.