aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorSurbhi Kakarya <surbhi.kakarya@amd.com>2021-12-17 12:01:09 -0500
committerAlex Deucher <alexander.deucher@amd.com>2021-12-30 08:54:43 -0500
commitb6fd6e0f5eb8c6d10575d08a2c6df8ed83877e07 (patch)
treed24137d3a233be02f4b5257b060ee34c240d26e9 /drivers/gpu
parentdrm/amdkfd: correct sdma queue number in kfd device init (v3) (diff)
downloadlinux-dev-b6fd6e0f5eb8c6d10575d08a2c6df8ed83877e07.tar.xz
linux-dev-b6fd6e0f5eb8c6d10575d08a2c6df8ed83877e07.zip
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 <Surbhi.Kakarya@amd.com> Acked-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_device.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index 43e9149e129a..dadfa03570d1 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);