aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/thread.cpp
AgeCommit message (Collapse)Author
2020-06-27Kernel: Correct Host Context on Threads and Scheduler.Fernando Sahmkow
2020-06-27General: Cleanup legacy code.Fernando Sahmkow
2020-06-27SingleCore: Use Cycle Timing instead of Host Timing.Fernando Sahmkow
2020-06-27Thread: Release the ARM Interface on exitting.Fernando Sahmkow
2020-06-27General: Move ARM_Interface into Threads.Fernando Sahmkow
2020-06-27General: Fix Stop functionFernando Sahmkow
2020-06-27Kernel: Preempt Single core on redudant yields.Fernando Sahmkow
2020-06-27Scheduler: Set last running time on thread.Fernando Sahmkow
2020-06-27ARM/Memory: Correct Exclusive Monitor and Implement Exclusive Memory Writes.Fernando Sahmkow
2020-06-27SVC: Correct SetThreadActivity.Fernando Sahmkow
2020-06-27SCC: Small corrections to CancelSynchronizationFernando Sahmkow
2020-06-27Kernel: Correct Signal on Thread Death and Setup Sync Objects on Thread for ↵Fernando Sahmkow
Debugging
2020-06-27Core: Correct HLE Event Callbacks and other issues.Fernando Sahmkow
2020-06-27SVC: Correct WaitSynchronization, WaitProcessWideKey, SignalProcessWideKey.Fernando Sahmkow
2020-06-27SVC: Correct SendSyncRequest.Fernando Sahmkow
2020-06-27SVC: Correct ArbitrateUnlockFernando Sahmkow
2020-06-27SVC: Correct SignalEvent, ClearEvent, ResetSignal, WaitSynchronization, ↵Fernando Sahmkow
CancelSynchronization, ArbitrateLock
2020-06-27SVC: Correct GetThreadPriority, SetThreadPriority, GetThreadCoreMask, ↵Fernando Sahmkow
SetThreadCoreMask, GetCurrentProcessorNumber
2020-06-27SVC: Correct CreateThread, StartThread, ExitThread, SleepThread.Fernando Sahmkow
2020-06-27General: Recover Prometheus project from harddrive failure Fernando Sahmkow
This commit: Implements CPU Interrupts, Replaces Cycle Timing for Host Timing, Reworks the Kernel's Scheduler, Introduce Idle State and Suspended State, Recreates the bootmanager, Initializes Multicore system.
2020-04-29kernel: Don't fail silentlyDavid Marcec
2020-04-22Merge pull request #3725 from MerryMage/fpcrbunnei
thread: FPCR.FZ is likely not 1 (and FPCR.RMode = TieAway and FPCR.DN = 0)
2020-04-19thread: FPCR.FZ is likely not 1MerryMage
2020-04-15kernel/thread: Resolve -Wswitch warningsLioncash
2020-03-02core: Implement separate A32/A64 ARM interfaces.bunnei
2020-02-22Kernel: Rename ThreadCallbackHandleTable and Setup Thread Ids on Kernel.Fernando Sahmkow
2020-02-14Merge pull request #3401 from FernandoS27/synchronizationbunnei
Set of refactors for Kernel Synchronization and Hardware Constants
2020-02-12kernel/thread: Remove trivial usages of the global system accessorLioncash
We can just use the kernel member variable directly instead of going through the system to obtain the same thing.
2020-02-11Core: Set all hardware emulation constants in a single file.Fernando Sahmkow
2020-02-11Kernel: Refactor synchronization to better match REFernando Sahmkow
2020-02-11Kernel: Change WaitObject to Synchronization object. In order to better ↵Fernando Sahmkow
reflect RE.
2020-01-26Kernel: Remove a few global instances from the kernel.Fernando Sahmkow
2020-01-26Core: Refactor CpuCoreManager to CpuManager and Cpu to Core Manager.Fernando Sahmkow
This commit instends on better naming the new purpose of this classes.
2019-11-26core/memory: Migrate over address checking functions to the new Memory classLioncash
A fairly straightforward migration. These member functions can just be mostly moved verbatim with minor changes. We already have the necessary plumbing in places that they're used. IsKernelVirtualAddress() can remain a non-member function, since it doesn't rely on class state in any form.
2019-11-24kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for ↵bunnei
kernel objects. (#3154) * kernel: Replace usage of boost::intrusive_ptr with std::shared_ptr for kernel objects. - See https://github.com/citra-emu/citra/pull/4710 for details.
2019-11-23Merge pull request #3114 from FernandoS27/cond-varbunnei
Kernel: Correct behavior of Condition Variables to be more similar to real hardware.
2019-11-23Merge pull request #3130 from FernandoS27/cancel-syncbunnei
Kernel: Correct Cancel Synchronization.
2019-11-21Kernel: Correct behavior of Condition Variables to be more similar to real ↵Fernando Sahmkow
hardware. This commit ensures cond var threads act exactly as they do in the real console. The original implementation uses an RBTree and the behavior of cond var threads is that at the same priority level they act like a FIFO.
2019-11-16Kernel: Correct Cancel Synchronization.Fernando Sahmkow
This commit corrects the behavior of cancel synchronization when the thread is running/ready and ensures the next wait is cancelled as it's suppose to.
2019-11-12kernel: Resolve sign conversion warningsLioncash
Uncovered a bug within Thread's SetCoreAndAffinityMask() where an unsigned variable (ideal_core) was being compared against "< 0", which would always be a false condition. We can also get rid of an unused function (GetNextProcessorId) which contained a sign mismatch warning.
2019-10-15Kernel Thread: Cleanup THREADPROCESSORID_DONT_UPDATE.Fernando Sahmkow
2019-10-15Kernel: Address Feedback 2Fernando Sahmkow
2019-10-15Kernel: Clang FormatFernando Sahmkow
2019-10-15Kernel: Reverse global accessor removal.Fernando Sahmkow
2019-10-15Kernel: Address Feedback.Fernando Sahmkow
2019-10-15Kernel_Thread: Eliminate most global accessors.Fernando Sahmkow
2019-10-15Kernel: Correct Paused schedulingFernando Sahmkow
2019-10-15Kernel: Corrections to Wait Objects clearing in which a thread could still ↵Fernando Sahmkow
be signalled after a timeout or a cancel.
2019-10-15Scheduler: Add protections for Yield bombingFernando Sahmkow
In case of redundant yields, the scheduler will now idle the core for it's timeslice, in order to avoid continuously yielding the same thing over and over.
2019-10-15Kernel: Style and CorrectionsFernando Sahmkow