citra-mk7/src/core/hle
Subv e90daa6a4f Kernel/IPC: Add a small delay after each SyncRequest to prevent thread starvation.
In a real 3DS, threads that call svcSyncRequest are put to sleep until the server responds via svcReplyAndReceive. Our HLE services don't implement this mechanism and are effectively immediate from the 3DS's point of view. This commit makes it so that we at least simulate the IPC delay.

Specific HLE handlers might need to put their callers to sleep for a longer period of time to simulate IO timings. This is their responsibility but doing so is currently not implemented.

See https://gist.github.com/ds84182/4a7690c5376e045cab9129ca4185bbeb for a test that was not passing before this commit.
2017-12-07 22:40:15 -05:00
..
applets CoreTiming: Reworked CoreTiming (#3119) 2017-11-25 14:56:57 +01:00
kernel Kernel/IPC: Add a small delay after each SyncRequest to prevent thread starvation. 2017-12-07 22:40:15 -05:00
service ldr_ro: Use ranged instruction cache invalidation 2017-12-06 20:59:09 +00:00
config_mem.cpp Core: update Kernel Config Memory to latest version (11.2) 2017-01-30 11:29:00 +03:00
config_mem.h Remove empty newlines in #include blocks. 2016-09-21 11:15:47 +09:00
function_wrappers.h SVC: Remove GetPointer usage in CreatePort. 2017-10-04 14:04:03 -05:00
ipc_helpers.h ipc_helper: split PushMoveObjects and PushCopyObjects 2017-12-04 19:46:44 +02:00
ipc.h Kernel/IPC: Implement StaticBuffer translation for HLE services that use the HLERequestContext architecture. 2017-11-12 11:00:00 -05:00
lock.cpp hle/lock: Remove #pragma once in cpp file 2017-10-21 13:59:14 +01:00
lock.h Use recursive_mutex instead of mutex to fix #2902 2017-08-29 20:39:55 +12:00
result.h ResultVal: Remove MoveFrom() 2017-06-18 19:03:15 -07: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 CoreTiming: Reworked CoreTiming (#3119) 2017-11-25 14:56:57 +01:00
shared_page.h shared_page: stub battery state 2017-03-21 13:25:56 +02:00
svc.cpp Merge pull request #3096 from Subv/arbitrateaddress 2017-11-15 09:16:16 -05:00
svc.h svc: Move ResetType enum to the kernel event header 2016-03-12 21:47:41 -05:00