From e6009794eee908c9abc7c8be90fb8ec37756a841 Mon Sep 17 00:00:00 2001 From: Eladash Date: Sun, 6 Aug 2023 07:57:16 +0300 Subject: [PATCH] vm.cpp: Fixup race in range_lock_internal --- rpcs3/Emu/Memory/vm.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/rpcs3/Emu/Memory/vm.cpp b/rpcs3/Emu/Memory/vm.cpp index 36e9c2e636..28305052a1 100644 --- a/rpcs3/Emu/Memory/vm.cpp +++ b/rpcs3/Emu/Memory/vm.cpp @@ -174,12 +174,11 @@ namespace vm range_lock->store(to_store); } - for (u64 i = 0, to_clear = umax;; i++) + for (u64 i = 0;; i++) { const u64 is_share = g_shmem[begin >> 16].load(); - to_clear &= get_range_lock_bits(true); - const u64 busy = for_all_range_locks(to_clear, [&](u64 addr_exec, u32 size_exec) + const u64 busy = for_all_range_locks(get_range_lock_bits(true), [&](u64 addr_exec, u32 size_exec) { u64 addr = begin;