On Fri, Nov 18, 2016 at 01:31:57PM +0200, Joonas Lahtinen wrote:
> On pe, 2016-11-18 at 10:14 +0000, Chris Wilson wrote:
> > On Fri, Nov 18, 2016 at 11:18:09AM +0200, Joonas Lahtinen wrote:
> > > I don't quite see why? Are you expecting the iteration to hit same vma
> > > twice? Or somebody moving it while we iterate.
> > 
> > The unbind may causes a free of any member on this list, so the pinning
> > prevents other vma from being unbound whilst waiting on this one. It
> > used to be a big deal, but since the various reworking the deferred free
> > hides the oops.
> 
> Drop a comment.

                /* Never show fear in the face of dragons!
                 *
                 * We cannot directly remove this node from within this
                 * iterator and as with i915_gem_evict_something() we employ
                 * the vma pin_count in order to prevent the action of
                 * unbinding one vma from freeing (by dropping its active 
                 * reference) another in our eviction list. (Actually this
                 * *should* be safe now due to the independent retirement of
                 * vma and deferred free preventing other nodes from
                 * disappearing, but for consistency and that extra layer of
                 * warm protection, let it be!)
                 */


-- 
Chris Wilson, Intel Open Source Technology Centre
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to