Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | core: hle: kernel: k_thread: Rework dummy thread waiting. | bunnei | 2022-04-12 | 1 | -4/+6 |
| | |||||
* | hle: kernel: Use std::mutex instead of spin locks for most kernel locking. | bunnei | 2022-04-12 | 1 | -1/+2 |
| | |||||
* | k_thread: Fix data race | lat9nq | 2022-04-04 | 1 | -1/+2 |
| | | | | | TSan reports a data race between writing at cpp:1162 and reading at h:262. Make the thread_state atomic to prevent this. | ||||
* | core: hle: kernel: k_thread: Update to reflect tree changes. | bunnei | 2022-03-15 | 1 | -3/+3 |
| | |||||
* | hle: kernel: KThread: Ensure host (dummy) threads block on locking. | bunnei | 2022-01-22 | 1 | -0/+13 |
| | | | | | - But do not enter the priority queue, as otherwise they will be scheduled. - Allows dummy threads to use guest synchronization primitives. | ||||
* | hle: kernel: KThread: Decrease DummyThread priority to ensure it is never scheduled. | bunnei | 2022-01-21 | 1 | -0/+1 |
| | |||||
* | hle: kernel: KThread: Rename thread_type_for_debugging -> thread_type. | bunnei | 2022-01-21 | 1 | -3/+3 |
| | | | | - This will be used to ensure that we do not schedule dummy threads. | ||||
* | core: hle: kernel: KThread: Integrate with KWorkerTask and implement DoWorkerTaskImpl. | bunnei | 2022-01-15 | 1 | -1/+6 |
| | | | | | | - This is used to terminate a thread asynchronously after it has been exited. - This fixes a crash that can occur in Pokemon Sword/Shield because a thread is incorrectly closed on svcExitThread, then, the thread is destroyed on svcCloseHandle while it is still scheduled. - Instead, we now wait for the thread to no longer be scheduled on all cores before destroying it from KWorkerTaskManager, which is accurate to HOS behavior. | ||||
* | core: hle: kernel: KThread: Replace Suspend with UpdateState & various updates. | bunnei | 2022-01-15 | 1 | -2/+2 |
| | | | | - This makes our implementations of these more closely match HOS. | ||||
* | core: hle: kernel: Implement thread pinning. | bunnei | 2021-12-31 | 1 | -1/+5 |
| | | | | | - 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. | ||||
* | hle: kernel: k_thread: Rename sleeping_queue -> wait_queue. | bunnei | 2021-12-07 | 1 | -6/+2 |
| | |||||
* | hle: kernel: k_thread: Treat dummy threads as a special type. | bunnei | 2021-12-07 | 1 | -0/+1 |
| | |||||
* | hle: kernel: Add a flag for indicating that the kernel is currently shutting down. | bunnei | 2021-12-07 | 1 | -0/+4 |
| | |||||
* | hle: kernel: Cleanup to match coding style. | bunnei | 2021-12-07 | 1 | -2/+2 |
| | |||||
* | hle: kernel: KThread: Migrate to updated KThreadQueue (part 1). | bunnei | 2021-12-07 | 1 | -2/+2 |
| | |||||
* | hle: kernel: KThread: Remove tracking of sync object from threads. | bunnei | 2021-12-07 | 1 | -12/+0 |
| | |||||
* | hle: kernel: Update KThreadQueue and migrate KSynchronizationObject. | bunnei | 2021-12-07 | 1 | -0/+27 |
| | |||||
* | core: hle: kernel: Disable dispatch count tracking on single core. | bunnei | 2021-12-07 | 1 | -3/+8 |
| | | | | - This would have limited value, and would be a mess to handle properly. | ||||
* | core: hle: kernel: k_thread: Mark KScopedDisableDispatch as nodiscard. | bunnei | 2021-12-07 | 1 | -1/+1 |
| | |||||
* | core: hle: kernel: k_thread: Add KScopedDisableDispatch. | bunnei | 2021-12-07 | 1 | -0/+31 |
| | |||||
* | Revert "kernel: Various improvements to scheduler" | bunnei | 2021-08-26 | 1 | -36/+0 |
| | |||||
* | core: hle: kernel: Disable dispatch count tracking on single core. | bunnei | 2021-08-14 | 1 | -3/+8 |
| | | | | - This would have limited value, and would be a mess to handle properly. | ||||
* | core: hle: kernel: k_thread: Mark KScopedDisableDispatch as nodiscard. | bunnei | 2021-08-07 | 1 | -1/+1 |
| | |||||
* | core: hle: kernel: k_thread: Add KScopedDisableDispatch. | bunnei | 2021-08-07 | 1 | -0/+31 |
| | |||||
* | general: Replace RESULT_SUCCESS with ResultSuccess | Morph | 2021-06-02 | 1 | -1/+1 |
| | | | | Transition to PascalCase for result names. | ||||
* | kernel: Add missing override specifiers | Lioncash | 2021-05-29 | 1 | -5/+5 |
| | | | | | | | | 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. | ||||
* | kernel: Eliminate variable shadowing | Lioncash | 2021-05-08 | 1 | -3/+3 |
| | | | | | Now that the large kernel refactor is merged, we can eliminate the remaining variable shadowing cases. | ||||
* | hle: kernel: Rename Process to KProcess. | bunnei | 2021-05-06 | 1 | -8/+8 |
| | |||||
* | hle: kernel: Remove deprecated Object class. | bunnei | 2021-05-06 | 1 | -15/+0 |
| | |||||
* | hle: kernel: Migrate KThread to KAutoObject. | bunnei | 2021-05-06 | 1 | -57/+43 |
| | |||||
* | k_thread: Remove [[nodiscard]] attribute from ClearWaitCancelled() | Lioncash | 2021-04-12 | 1 | -1/+1 |
| | | | | | This function has a void return value, so this attribute doesn't apply to it. | ||||
* | hle: kernel: Migrate some code from Common::SpinLock to KSpinLock. | bunnei | 2021-03-21 | 1 | -2/+2 |
| | |||||
* | hle: kernel: KThread: Rework dummy threads & fix memory leak. | bunnei | 2021-03-06 | 1 | -4/+20 |
| | | | | | - 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. | ||||
* | Revert "core: Switch to unique_ptr for usage of Common::Fiber." | bunnei | 2021-03-06 | 1 | -8/+2 |
| | |||||
* | core: Switch to unique_ptr for usage of Common::Fiber. | bunnei | 2021-02-27 | 1 | -2/+8 |
| | | | | | - With using unique_ptr instead of shared_ptr, we have more explicit ownership of the context. - Fixes a memory leak due to circular reference of the shared pointer. | ||||
* | yuzu: debugger: Ignore HLE threads. | bunnei | 2021-01-29 | 1 | -0/+5 |
| | |||||
* | hle: kernel: KScheduler: Introduce thread context_guard. | bunnei | 2021-01-29 | 1 | -0/+1 |
| | |||||
* | hle: kernel: Recode implementation of KThread to be more accurate. | bunnei | 2021-01-29 | 1 | -282/+308 |
| | |||||
* | hle: kernel: KThread: Clean up thread priorities. | bunnei | 2021-01-29 | 1 | -22/+0 |
| | |||||
* | hle: kernel: KThread: Reorganize thread priority defaults. | bunnei | 2021-01-29 | 1 | -9/+3 |
| | |||||
* | hle: kernel: KThread: Fix ThreadType definition. | bunnei | 2021-01-29 | 1 | -4/+7 |
| | |||||
* | hle: kernel: Move single core "phantom mode" out of KThread. | bunnei | 2021-01-29 | 1 | -9/+0 |
| | | | | - This is a workaround that does not belong in a kernel primitive. | ||||
* | hle: kernel: KThread: Remove thread types that do not exist. | bunnei | 2021-01-29 | 1 | -13/+2 |
| | |||||
* | core: hle: kernel: Rename Thread to KThread. | bunnei | 2021-01-29 | 1 | -0/+781 |