On 17/09/16 01:38 AM, Eric Anholt wrote: > Keith Packard <kei...@keithp.com> writes: >> Hans de Goede <hdego...@redhat.com> writes: >> >>> So it looks like we really need glFinish to ensure proper ordering here >>> (and I've just deleted the v2 of this patchset with flush with I had >>> prepared). >> >> If you need glFinish, then your drivers are broken. glFlush and suitable >> fences provides sufficient information to allow for synchronization >> between operations without also requiring waiting for the hardware to >> finish. It's a difference between getting things into the hardware >> queues in the right order and waiting for those hardware queues to >> drain. > > glFlush by the spec does provide any guarantees that things have made it > to the kernel. We have just assumed that, but I think the Radeon driver > may be violating that assumption these days.
No, it doesn't. It only uses the separate command submission thread for internal flushes, e.g. when running out of space for the GPU command stream. glFlush still results in a synchronous flush. Hans, which drivers were you seeing the wrong order of operations with? I assume you were testing with patch 2 of the series applied? -- Earthling Michel Dänzer | http://www.amd.com Libre software enthusiast | Mesa and X developer
Description: OpenPGP digital signature
_______________________________________________ email@example.com: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: https://lists.x.org/mailman/listinfo/xorg-devel