Re: [PATCH 09/40] drm/i915/selftests: Free the batch along the contexts error path

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Quoting Mika Kuoppala (2018-09-20 09:30:22)
> Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> writes:
> 
> > Remember to release the batch bo reference if we hit an error trying to
> > submit our MI_STORE_DWORD_IMM.
> >
> > References: https://bugs.freedesktop.org/show_bug.cgi?id=107979
> > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
> > ---
> >  drivers/gpu/drm/i915/selftests/i915_gem_context.c | 1 +
> >  1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_context.c b/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> > index 79f9bcaf0c05..a89d31075c7a 100644
> > --- a/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> > +++ b/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> > @@ -195,6 +195,7 @@ static int gpu_fill(struct drm_i915_gem_object *obj,
> >       i915_request_add(rq);
> >  err_batch:
> >       i915_vma_unpin(batch);
> > +     i915_vma_put(batch);
> 
> Looks good in here but in gpu_fill_dw we have similar
> problem? We release the object ref but don't
> release the vma when returning ERR_PTR.

The dirty secret is that vma don't have refs, they are owned by their
parent object (with a secondary lifetime constraint from the vm).
i915_vma_put(vma) == i915_gem_object_put(vma->obj);
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux