sna: Avoid recursive out-of-order operations in the middle of TearFree
authorChris Wilson <chris@chris-wilson.co.uk>
Sun, 15 Dec 2013 09:39:54 +0000 (09:39 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Sun, 15 Dec 2013 09:39:54 +0000 (09:39 +0000)
commitc8e339edd31859820907115c8d618b0fec3ef227
tree2030941fd516cb994b6bd0a20df84fa87b030283
parentf350a1369b3bd39ba0db8639f036864fe5df2f98
sna: Avoid recursive out-of-order operations in the middle of TearFree

During TearFree, if we have to wait for the shadow flip to complete, we
run the event handler for the device. This can then cause us to evaluate
pending completed vblank events, which may in turn then attempt to use
the shadow bo and recurse into the TearFree handler. Try to prevent this
and requeue the vblank event.

Reported-by: Pascal de Bruijn <pmjdebruijn@pcode.nl>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=72690
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/sna/sna_dri.c