diff --git a/rpcs3/Emu/Cell/lv2/lv2.cpp b/rpcs3/Emu/Cell/lv2/lv2.cpp index 9a60bf6d55..f45e5edc7b 100644 --- a/rpcs3/Emu/Cell/lv2/lv2.cpp +++ b/rpcs3/Emu/Cell/lv2/lv2.cpp @@ -1210,6 +1210,12 @@ bool lv2_obj::awake(cpu_thread* const thread, s32 prio) bool lv2_obj::yield(cpu_thread& thread) { vm::temporary_unlock(thread); + + if (auto ppu = thread.try_get()) + { + ppu->raddr = 0; // Clear reservation + } + return awake(&thread, yield_cmd); }