1
0
Fork 0
forked from suyu/suyu
suyu/src/core/hle
Subv e81a2080eb 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
..
kernel Kernel: Corrected the implementation of svcArbitrateLock and svcArbitrateUnlock. 2018-04-20 21:04:25 -05:00
service Merge pull request #360 from lioncash/namespaces 2018-04-20 09:44:40 -04:00
config_mem.cpp Format: Run the new clang format on everything 2018-01-20 16:45:11 -07:00
config_mem.h Format: Run the new clang format on everything 2018-01-20 16:45:11 -07:00
ipc.h hle_ipc: Add helper functions for reading and writing buffers. 2018-02-13 23:26:03 -05:00
ipc_helpers.h Fix: change check for domain order and existance of domain message header 2018-02-20 21:59:58 +03:00
lock.cpp Fix build on macOS and linux 2018-01-13 22:38:52 +00:00
lock.h Use recursive_mutex instead of mutex to fix #2902 2017-08-29 20:39:55 +12:00
result.h result: Check against self-assignment in ResultVal's copy assignment operator 2018-03-28 18:02:44 -04:00
romfs.cpp apt: load shared font from system archive 2017-06-26 01:38:12 +03:00
romfs.h apt: load shared font from system archive 2017-06-26 01:38:12 +03:00
shared_page.cpp Format: Run the new clang format on everything 2018-01-20 16:45:11 -07:00
shared_page.h Format: Run the new clang format on everything 2018-01-20 16:45:11 -07:00