Skip to content

Commit

Permalink
Made the CPU thread wait for the GPU thread to swap, when XFB is enab…
Browse files Browse the repository at this point in the history
…led. May fix some of the "FIFO is overflowed by GatherPipe ! CPU thread is too fast!" errors.
  • Loading branch information
skidau committed Jan 12, 2015
1 parent 7105e5a commit 14ced85
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions Source/Core/VideoCommon/MainBase.cpp
Expand Up @@ -125,6 +125,12 @@ void VideoBackendHardware::Video_EndField()
if (s_BackendInitialized)
{
SyncGPU(SYNC_GPU_SWAP);

// Wait until the GPU thread has swapped. Prevents FIFO overflows.
while (g_ActiveConfig.bUseXFB && SConfig::GetInstance().m_LocalCoreStartupParameter.bCPUThread && s_swapRequested.IsSet())
{
Common::YieldCPU();
}
s_swapRequested.Set();
}
}
Expand Down

0 comments on commit 14ced85

Please sign in to comment.