aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorYuBiao Wang <YuBiao.Wang@amd.com>2021-08-17 17:36:33 +0800
committerAlex Deucher <alexander.deucher@amd.com>2021-08-18 18:23:00 -0400
commit691191a2f458e0176414cb5b3993b0c018cdc58c (patch)
tree97cc5a30fb2fe2e0ce25058b2e21e29b11340720 /drivers/gpu
parentce97f37be8957a7f3f42eafaa9469b0ab941e63b (diff)
downloadlinux-691191a2f458e0176414cb5b3993b0c018cdc58c.tar.gz
drm/amd/amdgpu:flush ttm delayed work before cancel_sync
[Why] In some cases when we unload driver, warning call trace will show up in vram_mgr_fini which claims that LRU is not empty, caused by the ttm bo inside delay deleted queue. [How] We should flush delayed work to make sure the delay deleting is done. Signed-off-by: YuBiao Wang <YuBiao.Wang@amd.com> Reviewed-by: Andrey Grodzovsky <andrey.grodzovsky@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.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index 395779ee44d0..41cc00e489ac 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -3826,8 +3826,10 @@ void amdgpu_device_fini_hw(struct amdgpu_device *adev)
{
dev_info(adev->dev, "amdgpu: finishing device.\n");
flush_delayed_work(&adev->delayed_init_work);
- if (adev->mman.initialized)
+ if (adev->mman.initialized) {
+ flush_delayed_work(&adev->mman.bdev.wq);
ttm_bo_lock_delayed_workqueue(&adev->mman.bdev);
+ }
adev->shutdown = true;
/* make sure IB test finished before entering exclusive mode