intel: Wait on the last swapbuffers to complete before queuing a new one.
authorEric Anholt <eric@anholt.net>
Tue, 21 Jul 2009 18:23:18 +0000 (11:23 -0700)
committerEric Anholt <eric@anholt.net>
Mon, 3 Aug 2009 20:34:07 +0000 (13:34 -0700)
commit0828579a658af01a64b5e699175dc9bbbedcd685
treec984ce05ef95397b500a8f719ec8451be4fcba2d
parente0d61fd696b3561d575a9ee5055a1484a5ac6926
intel: Wait on the last swapbuffers to complete before queuing a new one.

This fixes jerkiness in doom3 and other apps since the kernel change to
throttle less absurdly, which led to a thundering herd of frames.

Because this is a rather minimal fix, there is at least one downside: If
the whole scene completes in one batchbuffer, we'll end up stalling the GPU.

Thanks to Michel Dänzer for suggesting using glFlush to signal frame end
instead of going to all the effort of adding a new DRI2 extension.
src/mesa/drivers/dri/intel/intel_batchbuffer.c
src/mesa/drivers/dri/intel/intel_context.c
src/mesa/drivers/dri/intel/intel_context.h