[Intel-gfx] [RFC 2/2] drm/i915: Clean-up PPGTT on context destruction

Barbalho, Rafael rafael.barbalho at intel.com
Mon Feb 23 08:52:46 PST 2015



> -----Original Message-----
> From: Chris Wilson [mailto:chris at chris-wilson.co.uk]
> Sent: Monday, February 23, 2015 4:50 PM
> To: Daniel Vetter
> Cc: Barbalho, Rafael; intel-gfx at lists.freedesktop.org
> Subject: Re: [Intel-gfx] [RFC 2/2] drm/i915: Clean-up PPGTT on context
> destruction
> 
> On Mon, Feb 23, 2015 at 05:41:51PM +0100, Daniel Vetter wrote:
> > On Fri, Feb 13, 2015 at 10:34:51AM +0000, Chris Wilson wrote:
> > > On Fri, Feb 13, 2015 at 10:55:46AM +0100, Daniel Vetter wrote:
> > > > Well except that our unbind code is too dense to do that correctly for
> > > > shared buffers, so we need to move obj->active to vma->active first.
> > >
> > > We unbind vma, so what do you mean?
> >
> > The unbind of the vma will block since we track active per-obj instead of
> > per-vma. Which is kinda not that cool for a kref_put cleanup function.
> 
> As I have said and shown, that is very easy to rectify and has, for
> example, nice side-effects of basically making operating on fences free
> of blocking on the GPU if the object is busy only in the ppgtt. The
> principle use is so that we are consistent in vma vs obj tracking and
> make the code much cleaner imo.

My initial implementation was tracking the vma in the request structure but it
wasn't as clean. I'll take everything that has been said on-board and clean
things up, and add an igt test too while I am at it.

> 
> --
> Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list