dolphin/Source/Core
comex 06dd0ba3b4 Exit ReadDataFromFifoOnCPU, PushFifoAuxBuffer early if shutting down (GpuRunningState=false)
This was causing a race condition where the "absurdly large aux buffer"
panic alert would be triggered in the last bit of fifo processing on the
CPU thread in deterministic mode (i.e. netplay).  SyncGPU is supposed to
move the auxiliary queue data to the beginning of the containing buffer
so we don't have to deal with wraparound; if GpuRunningState is false,
however, it just returns, because it's set to false by another thread -
thus it doesn't know whether RunGpuLoop is still executing (in which
case it can't just reset the pointers, because it may still be using the
buffer) or not (in which case the condition variable it normally waits
for to avoid the previous problem will never be signaled).  However,
SyncGPU's caller PushFifoAuxBuffer wasn't aware of this, so if the
buffer was filling at just the right time, it'd stay full and that
function would complain that it was about to overflow it.  Similar
problem with ReadDataFromFifoOnCPU afaik.  Fix this by returning early
from those as well; other callers of SyncGPU should be safe.  A
*slightly* cleaner alternative would be giving the CPU thread a way to
tell when RunGpuLoop has actually exited, but whatever, this works.
2015-04-21 22:33:29 -04:00
..
AudioCommon (Visual Studio) Categorize SoundStream.h with other SoundStream files 2015-04-03 14:37:03 -04:00
Common General: Apply the const specifier where applicable 2015-04-15 02:04:03 -04:00
Core Merge pull request #2225 from JosJuice/remove-volumehandler 2015-04-21 11:18:57 +12:00
DiscIO DiscIO: Add a missing header to Volume.h 2015-04-20 21:10:31 -04:00
DolphinQt DolphinQt: Sort game list by ascending title order by default 2015-04-11 16:44:35 +02:00
DolphinWX Merge pull request #2308 from Stevoisiak/FrameToolsMath 2015-04-21 16:17:02 +02:00
InputCommon Merge pull request #2199 from skidau/remove-controls-lock 2015-04-21 11:13:30 +12:00
UICommon Fix user directories at times doing stupid things. 2015-03-15 09:19:48 -05:00
VideoBackends Merge pull request #2301 from lioncash/const 2015-04-16 23:13:39 -04:00
VideoCommon Exit ReadDataFromFifoOnCPU, PushFifoAuxBuffer early if shutting down (GpuRunningState=false) 2015-04-21 22:33:29 -04:00
CMakeLists.txt Merge pull request #1085 from waddlesplash/refactoring 2014-10-05 21:25:44 -04:00