vk: Fix MTRSX deadlock (#7766)

This commit is contained in:
kd-11 2020-03-12 22:29:58 +03:00 committed by GitHub
parent f0edcc16fe
commit 7e9dbeff7b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -2273,6 +2273,10 @@ void VKGSRender::do_local_task(rsx::FIFO_state state)
// NOTE: This may cause graphics corruption due to unsynchronized modification
on_invalidate_memory_range(m_offloader_fault_range, m_offloader_fault_cause);
m_queue_status.clear(flush_queue_state::deadlock);
// Abort all other operations, this is likely coming from offloader::sync() and we need to unwind the call stack.
// If flush_command_queue is executed at this point, recursion will cause a deadlock to occur.
return;
}
if (m_flush_requests.pending())