[Intel-gfx] [PATCH v2 3b/3] drm/i915: Kill i915_gem_execbuffer_wait_for_flips()

Jesse Barnes jbarnes at virtuousgeek.org
Fri Nov 2 19:09:44 CET 2012


On Fri, 02 Nov 2012 13:29:20 +0000
Chris Wilson <chris at chris-wilson.co.uk> wrote:

> On Thu,  1 Nov 2012 20:06:03 +0200, ville.syrjala at linux.intel.com wrote:
> > From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > 
> > As per Chris Wilson's suggestion make
> > i915_gem_execbuffer_wait_for_flips() go away.
> > 
> > This was used to stall the GPU ring while there are pending
> > page flips involving the relevant BO. Ie. while the BO is still
> > being scanned out by the display controller.
> > 
> > The recommended alternative is to use the page flip events to
> > wait for the page flips to fully complete before reusing the BO
> > of the old front buffer. Or use more buffers.
> > 
> > Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
> Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
> 
> Needs an ack from either Jesse or Kristian.

Yeah I think this is safe.  the kernel doesn't need to protect
userspace from doing something silly like rendering on top of the
current framebuffer.

This patch would also address Eric's complaint about the async patches
in that the last buffer will always be available for rendering.

Generally this won't be an issue anyway, since subsequent rendering
will be behind any flips that will replace the current scanout, so you
won't see drawing in progress even in the async flip case.

-- 
Jesse Barnes, Intel Open Source Technology Center



More information about the Intel-gfx mailing list