gpu_thread: Block on FlushRegion for all GPU accuracies
This addresses a synchronization issue that causes an SVC break in Kirby and the Forgotten Land.
This commit is contained in:
@@ -90,6 +90,10 @@ void ThreadManager::FlushRegion(VAddr addr, u64 size) {
|
||||
return;
|
||||
}
|
||||
if (!Settings::IsGPULevelExtreme()) {
|
||||
// Push a command and block here before proceeding, addresses a synchronization
|
||||
// bug causing an SVC break in Kirby and the Forgotten Land
|
||||
// GPUTickCommand is essentially a no-op if we don't RequestFlush()
|
||||
PushCommand(GPUTickCommand(), true);
|
||||
return;
|
||||
}
|
||||
auto& gpu = system.GPU();
|
||||
|
||||
Reference in New Issue
Block a user