Chris Wilson <ch...@chris-wilson.co.uk> writes: > "X rendering calls made prior to glXWaitX are guaranteed to be > executed before GL rendering calls made after glXWaitX." > > The goal is to implement that without adding a round-trip to the > Xserver. Adding one using XSync() is easy, but we can piggy-back > another, the DRI2GetBuffers request made to update the render buffers > before the next rendering (thus satisfying the condition of flushing all > X operations before the next GL rendering). To this end we can just flag > the DRI2 buffers as invalid, and the driver will refresh them in due > course. If the DRI2 buffers are, or will be, invalid due to damage from > X or through a SwapBuffers call, we will not have to add another > roundtrip as the single DRI2GetBuffers will refresh over multiple > invalidates. > > This should fix the historic issue that glXWaitX() has been unreliable, > but has recently found itself a new trigger will the removal of > unnecessary glViewport calls:
I think XSync makes more sense. It's cheaper, and it does exactly what you're supposed to do at this point -- make sure that all your X requests have been processed, so that any GL batchbuffer flushes happen after that.
signature.asc
Description: PGP signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev