From: Chris Wilson <[email protected]>

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 <[email protected]>
Signed-off-by: Jonathan Cavitt <[email protected]>
CC: Matt Roper <[email protected]>
CC: Andi Shyti <[email protected]>
---
 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

Reply via email to