[Intel-gfx] [Blacklisted][PATCH] Submit batch buffers from flush callback chain

Chris Wilson chris at chris-wilson.co.uk
Fri Jul 30 08:29:53 CEST 2010


On Thu, 29 Jul 2010 18:34:19 -0400, Kristian Høgsberg <krh at bitplanet.net> wrote:
> There are a few cases where the server will flush client output buffers
> but our block handler only catches the most common (before going into select).
> If the server flushes client buffers before we submit our batch buffer,
> the client may receive a damage event for rendering that hasn't happened yet.
> 
> Instead, we can hook into the flush callback chain, which the server will
> invoke just before flushing output.  This lets us submit batch buffers
> before sending out events, preserving ordering.
> 
> Fixes 28438: [bisected] incorrect character in gnome-terminal under compiz
> https://bugs.freedesktop.org/show_bug.cgi?id=28438
> 
> Signed-off-by: Kristian Høgsberg <krh at bitplanet.net>

A flush callback makes more sense than a block handler. Is there a guide
to the various hooks the xserver uses for io and the meaning of those
barriers between clients? Do we have an idea of the impact this has in
non-damage situations, does it impact aa10text? ;-) In intel_dri.c we
manually flush the batchbuffer, should this be better expressed in terms
of a call to a general flush func?

For what's it is worth, I approve of this change. :)

-- 
Chris Wilson, Intel Open Source Technology Centre



More information about the Intel-gfx mailing list