[PATCH v2 3/3] drm/amdgpu: Workaround IOMMU driver bug
Christian König
ckoenig.leichtzumerken at gmail.com
Fri May 21 08:41:22 UTC 2021
Am 21.05.21 um 04:22 schrieb Felix Kuehling:
> The intel IOMMU driver causes kernel oopses or internal errors flooding
> kernel log when mapping larger SG tables. Limiting the size of userptr BOs
> to 6GB seems to avoid this.
>
> Signed-off-by: Felix Kuehling <Felix.Kuehling at amd.com>
CC whoever is the maintainer of the Intel IOMMU driver?
Would be nice to have that bug fixed instead.
Christian.
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> index 2b8b89535198..3becf9d9f8fd 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
> @@ -1409,6 +1409,9 @@ int amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu(
> domain = alloc_domain = AMDGPU_GEM_DOMAIN_GTT;
> alloc_flags = 0;
> } else if (flags & KFD_IOC_ALLOC_MEM_FLAGS_USERPTR) {
> + /* workaround IOMMU driver bug */
> + if (size >= (6ULL << 30))
> + return -ENOMEM;
> domain = AMDGPU_GEM_DOMAIN_GTT;
> alloc_domain = AMDGPU_GEM_DOMAIN_CPU;
> alloc_flags = AMDGPU_GEM_CREATE_PREEMPTIBLE;
More information about the amd-gfx
mailing list