- Aug 02, 2018
- Jul 31, 2018
-
-
Lioncash authored
Removes unnecessary direct dependencies in some headers and also gets rid of indirect dependencies that were being relied on to be included.
-
- Jul 24, 2018
-
-
MerryMage authored
-
- Jul 21, 2018
-
-
Subv authored
Note that there's currently a dynarmic bug preventing this register from being written.
-
- Jul 20, 2018
-
-
Lioncash authored
Makes the thread status strongly typed, so implicit conversions can't happen. It also makes it easier to catch mistakes at compile time.
-
- Jul 18, 2018
-
-
Lioncash authored
Avoids pointless copies
-
Lioncash authored
This would result in a lot of allocations and related object construction, just to toss it all away immediately after the call. These are definitely not intentional, and it was intended that all of these should have been accessing the static function GetInstance() through the name itself, not constructed instances.
-
- Jul 03, 2018
-
-
James Rowe authored
-
James Rowe authored
-
- Jun 21, 2018
-
-
Michael Scire authored
-
- Jun 02, 2018
-
-
Subv authored
Kernel/Threads: A thread waking up by timeout from a WaitProcessWideKey may already have an assigned lock owner. This situation may happen like so: Thread 1 with low priority calls WaitProcessWideKey with timeout. Thread 2 with high priority calls WaitProcessWideKey without timeout. Thread 3 calls SignalProcessWideKey - Thread 2 acquires the lock and awakens. - Thread 1 can't acquire the lock and is put to sleep with the lock owner being Thread 2. Thread 1's timeout expires, with the lock owner still being set to Thread 2.
-
- May 31, 2018
-
-
Subv authored
-
- May 30, 2018
-
-
Subv authored
-
- May 10, 2018
- Apr 30, 2018
-
-
Lioncash authored
All of these variables and functions are related to timings and should be within the namespace.
-
- Apr 27, 2018
-
-
Lioncash authored
-
- Apr 26, 2018
-
-
Lioncash authored
-
- Apr 23, 2018
-
-
Subv authored
Verified with a hwtest and implemented based on reverse engineering. Thread A's priority will get bumped to the highest priority among all the threads that are waiting for a mutex that A holds. Once A releases the mutex and ownership is transferred to B, A's priority will return to normal and B's priority will be bumped.
-
- Apr 21, 2018
-
-
Subv authored
-
Subv authored
-
Subv authored
Switch mutexes are no longer kernel objects, they are managed in userland and only use the kernel to handle the contention case. Mutex addresses store a special flag value (0x40000000) to notify the guest code that there are still some threads waiting for the mutex to be released. This flag is updated when a thread calls ArbitrateUnlock. TODO: * Fix svcWaitProcessWideKey * Fix svcSignalProcessWideKey * Remove the Mutex class.
-
- Mar 31, 2018
-
-
bunnei authored
-
- Mar 19, 2018
-
-
bunnei authored
-
- Mar 16, 2018
- Mar 14, 2018
-
-
bunnei authored
-
- Feb 27, 2018
-
-
Jules Blok authored
-
- Feb 18, 2018
- Feb 14, 2018
-
-
Lioncash authored
-
- Jan 09, 2018
- Jan 03, 2018
-
-
bunnei authored
-