yuzu-fork/src
ReinUsesLisp 3fdb42e0b4 tests: Fix data race in fibers test
Previous to this commit, the tests were using operator[] from
unordered_map to query elements but this silently inserts empty elements
when they don't exist. If all threads were executed without concurrency,
this wouldn't be an issue, but the same unordered_map could be written
from two threads at the same time. This is a data race and makes some
previously inserted elements invisible for a short period of time,
causing them to insert and return an empty element. This default
constructed element (a zero) was used to index an array of fibers that
asserted when one of them was nullptr, shutting the test session off.

To address this issue, lock on thread id reads and writes. This could be
a shared mutex to allow concurrent reads, but the definition of
std::this_thread::get_id is fuzzy when using non-standard techniques
like fibers. I opted to use a standard mutex.

While we are at it, fix the included headers.
2020-10-28 01:41:24 -03:00
..
audio_core core: Fix clang build pt.2 2020-10-20 22:16:03 -04:00
common video_core: NVDEC Implementation 2020-10-26 23:07:36 -04:00
core Merge pull request #4729 from ameerj/nvdec-prod 2020-10-26 23:02:42 -07:00
input_common sdl_impl: Fix controller reconnection issues 2020-10-21 09:41:30 -04:00
tests tests: Fix data race in fibers test 2020-10-28 01:41:24 -03:00
video_core video_core: NVDEC Implementation 2020-10-26 23:07:36 -04:00
web_service core/CMakeLists: Make some warnings errors 2020-10-13 13:16:49 -04:00
yuzu yuzu: settings: Enable multicore, asynch GPU, and assembly shaders by default. 2020-10-26 23:13:05 -07:00
yuzu_cmd yuzu: settings: Enable multicore, asynch GPU, and assembly shaders by default. 2020-10-26 23:13:05 -07:00
yuzu_tester Merge pull request #4594 from german77/MotionHID 2020-09-17 12:39:01 -07:00
.clang-format
CMakeLists.txt CMakeLists: Resolve #4478 2020-08-03 11:21:24 -04:00