Commit Graph

8 Commits

Author SHA1 Message Date
Subv
55a515d119 Kernel: Corrected the implementation of svcArbitrateLock and svcArbitrateUnlock.
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.
2018-04-20 21:04:25 -05:00
bunnei
17cc648277 yuzu: Update license text to be consistent across project. 2018-01-13 16:22:39 -05:00
Subv
3f8fc78075 SVC: Implemented CancelSynchronization. 2018-01-09 15:02:04 -05:00
Subv
313ee6ed5e ErrorCodes: Updated the InvalidHandle and Timeout kernel error codes. 2018-01-09 12:05:10 -05:00
bunnei
02290d5443 errors: Define missing kernel error codes. 2017-12-31 15:59:00 -05:00
bunnei
f4590f3137 hle: Use Switch formatted result codes. 2017-10-31 19:26:11 -04:00
Yuri Kunde Schlesner
67a32afbae Kernel: Implement AcceptSession SVC 2017-06-23 11:26:37 -07:00
Yuri Kunde Schlesner
fd8aeacfa1 Kernel: Centralize error definitions in errors.h 2017-05-24 21:06:00 -07:00