mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-03-16 16:21:02 +00:00
dont escape from check_state() before ensuring signal is resetted.
This commit is contained in:
parent
3121fecc8f
commit
399ea2edb2
@ -229,11 +229,6 @@ bool cpu_thread::check_state() noexcept
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (state & cpu_flag::signal && state.test_and_reset(cpu_flag::signal))
|
|
||||||
{
|
|
||||||
cpu_sleep_called = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
const auto [state0, escape] = state.fetch_op([&](bs_t<cpu_flag>& flags)
|
const auto [state0, escape] = state.fetch_op([&](bs_t<cpu_flag>& flags)
|
||||||
{
|
{
|
||||||
// Atomically clean wait flag and escape
|
// Atomically clean wait flag and escape
|
||||||
@ -251,6 +246,11 @@ bool cpu_thread::check_state() noexcept
|
|||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if (state & cpu_flag::signal && state.test_and_reset(cpu_flag::signal))
|
||||||
|
{
|
||||||
|
cpu_sleep_called = false;
|
||||||
|
}
|
||||||
|
|
||||||
if (escape)
|
if (escape)
|
||||||
{
|
{
|
||||||
if (cpu_flag_memory)
|
if (cpu_flag_memory)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user