Quoting Tvrtko Ursulin (2019-12-06 11:12:42) > > On 05/12/2019 21:41, Chris Wilson wrote: > > Remove the vma we wish to destroy from the gt->closed_list to avoid > > having two i915_vma_parked() try and free it. > > > > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > > --- > > drivers/gpu/drm/i915/i915_vma.c | 4 +++- > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/drm/i915/i915_vma.c b/drivers/gpu/drm/i915/i915_vma.c > > index 6db35b9dead8..9ca6664c190c 100644 > > --- a/drivers/gpu/drm/i915/i915_vma.c > > +++ b/drivers/gpu/drm/i915/i915_vma.c > > @@ -1053,7 +1053,9 @@ void i915_vma_parked(struct intel_gt *gt) > > if (!kref_get_unless_zero(&obj->base.refcount)) > > continue; > > > > - if (!i915_vm_tryopen(vm)) { > > + if (i915_vm_tryopen(vm)) { > > + list_del_init(&vma->closed_link); > > + } else { > > i915_gem_object_put(obj); > > obj = NULL; > > } > > > > Fixes 2850748ef8763 I think. Until then there was a list_del_init in here. No. Until aa5e4453dc05 ("drm/i915/gem: Try to flush pending unbind events") there as only a single caller (__gt_park) so we knew there would only be one iterator. Still, either way, there's going to be a massive fixup patch for Joonas to apply. -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx