Re: [PATCH v2 4/4] drm/i915: Invalidate the TLBs on each GT

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

 



Hi Jonathan,

On Fri, Sep 29, 2023 at 01:18:37PM -0700, Jonathan Cavitt wrote:
> From: Chris Wilson <chris.p.wilson@xxxxxxxxx>
> 
> 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@xxxxxxxxx>
> Signed-off-by: Jonathan Cavitt <jonathan.cavitt@xxxxxxxxx>
> CC: Matt Roper <matthew.d.roper@xxxxxxxxx>
> CC: Andi Shyti <andi.shyti@xxxxxxxxxxxxxxx>

Reviewed-by: Andi Shyti <andi.shyti@xxxxxxxxxxxxxxx> 

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



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

  Powered by Linux