[PATCH v2] drm/amdkfd: Only apply TLB flush optimization on ALdebaran

Felix Kuehling felix.kuehling at amd.com
Thu Jul 1 16:37:42 UTC 2021


Am 2021-06-30 um 7:26 p.m. schrieb Eric Huang:
> It is based on reverting two patches back.
>   drm/amdkfd: Make TLB flush conditional on mapping
>   drm/amdgpu: Add table_freed parameter to amdgpu_vm_bo_update
>
> Signed-off-by: Eric Huang <jinhuieric.huang at amd.com>

I hope we'll be able to change this condition if firmware fixes become
available. I think eventually this should only be needed for Vega20
XGMI. For now, this patch is

Reviewed-by: Felix Kuehling <Felix.Kuehling at amd.com>


> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> index a6c01d624246..13fcef6836d2 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> @@ -1845,6 +1845,12 @@ int amdgpu_amdkfd_gpuvm_map_memory_to_gpu(
>  				true);
>  	ret = unreserve_bo_and_vms(&ctx, false, false);
>  
> +	/* Only apply no TLB flush on Aldebaran to
> +	 * workaround regressions on other Asics.
> +	 */
> +	if (table_freed && (adev->asic_type != CHIP_ALDEBARAN))
> +		*table_freed = true;
> +
>  	goto out;
>  
>  out_unreserve:


More information about the amd-gfx mailing list