From: Surbhi Kakarya Date: Fri, 17 Dec 2021 17:01:09 +0000 (-0500) Subject: drm/amdgpu: Check the memory can be accesssed by ttm_device_clear_dma_mappings. X-Git-Tag: perf_urgent_for_v5.17_rc2~93^2^2~28 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=b6fd6e0f5eb8c6d10575d08a2c6df8ed83877e07;p=users%2Fdwmw2%2Flinux.git drm/amdgpu: Check the memory can be accesssed by ttm_device_clear_dma_mappings. If the event guard is enabled and VF doesn't receive an ack from PF for full access, the guest driver load crashes. This is caused due to the call to ttm_device_clear_dma_mappings with non-initialized mman during driver tear down. This patch adds the necessary condition to check if the mman initialization passed or not and takes the path based on the condition output. Signed-off-by: Surbhi Kakarya Acked-by: Alex Deucher Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index 43e9149e129ab..dadfa03570d12 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -3895,7 +3895,8 @@ void amdgpu_device_fini_hw(struct amdgpu_device *adev) amdgpu_irq_fini_hw(adev); - ttm_device_clear_dma_mappings(&adev->mman.bdev); + if (adev->mman.initialized) + ttm_device_clear_dma_mappings(&adev->mman.bdev); amdgpu_gart_dummy_page_fini(adev);