[Intel-gfx] [PATCH 1/2] drm/i915: Remove use of the autoreported ringbuffer HEAD position
chris at chris-wilson.co.uk
Wed Feb 8 19:17:00 CET 2012
On Wed, 8 Feb 2012 19:02:47 +0100, Daniel Vetter <daniel at ffwll.ch> wrote:
> The issue is that the first one introduces a pretty decent perf
> regression, iirc Chris mentions something much large than 10x slowdown
> on certain cairo traces on sna. So we can only merge the first one
> together with the second one.
As it turns out, the cairo-traces were successfully exploiting the
ringbuffer overflow to avoid work. The reason why it eventually broke is
that when I experimented with using the BLT and semaphores, I introduced
a dependency on accurate seqno processing, which was obviously broken by
the overwriting of commands in the ringbuffer. And so is consistent with
the hangs reported by Eugeni and Ben, but we have yet to see many more
examples in the wild. Otoh, I don't think this explains the
all-generation use-after-free bug.
Net result, the 0.9s firefox-paintball result was a fantasy and the perf
gains provided by the second patch are only around 20% for the same
trace. Ergo -next material only if it passes scrutiny.
Chris Wilson, Intel Open Source Technology Centre
More information about the Intel-gfx