Message ID | 20230929201837.849299-4-jonathan.cavitt@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2,1/4] drm/i915: Define and use GuC and CTB TLB invalidation routines | expand |
Hi Jonathan, On Fri, Sep 29, 2023 at 01:18:37PM -0700, Jonathan Cavitt wrote: > From: Chris Wilson <chris.p.wilson@intel.com> > > With multi-GT devices, the object may have been bound on each GT and so > we need to invalidate the TLBs across all GT before releasing the pages > back to the system. > > Signed-off-by: Chris Wilson <chris.p.wilson@intel.com> > Signed-off-by: Jonathan Cavitt <jonathan.cavitt@intel.com> > CC: Matt Roper <matthew.d.roper@intel.com> > CC: Andi Shyti <andi.shyti@linux.intel.com> Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com> As Nirmoy has been needing this on a different context, could you please send just this one as a separate e-mail? This should also fix d6c531ab4820 ("drm/i915: Invalidate the TLBs on each GT") Thanks, Andi > --- > drivers/gpu/drm/i915/gem/i915_gem_pages.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pages.c b/drivers/gpu/drm/i915/gem/i915_gem_pages.c > index 6b6d22c194110..0ba955611dfb5 100644 > --- a/drivers/gpu/drm/i915/gem/i915_gem_pages.c > +++ b/drivers/gpu/drm/i915/gem/i915_gem_pages.c > @@ -198,7 +198,7 @@ static void flush_tlb_invalidate(struct drm_i915_gem_object *obj) > > for_each_gt(gt, i915, id) { > if (!obj->mm.tlb[id]) > - return; > + continue; > > intel_gt_invalidate_tlb_full(gt, obj->mm.tlb[id]); > obj->mm.tlb[id] = 0; > -- > 2.25.1
diff --git a/drivers/gpu/drm/i915/gem/i915_gem_pages.c b/drivers/gpu/drm/i915/gem/i915_gem_pages.c index 6b6d22c194110..0ba955611dfb5 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_pages.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_pages.c @@ -198,7 +198,7 @@ static void flush_tlb_invalidate(struct drm_i915_gem_object *obj) for_each_gt(gt, i915, id) { if (!obj->mm.tlb[id]) - return; + continue; intel_gt_invalidate_tlb_full(gt, obj->mm.tlb[id]); obj->mm.tlb[id] = 0;