[PATCH 1/5] drm/amd: Disable interrupts after amdgpu_fence_driver_hw_fini()

Mario Limonciello mario.limonciello at amd.com
Fri Nov 15 06:09:20 UTC 2024


amdgpu_fence_driver_hw_fini() internally attempts to disable
a few interrupts but this can fail if amdgpu_irq_disable_all() was
called first.

Push the call to amdgpu_irq_disable_all() later.

Signed-off-by: Mario Limonciello <mario.limonciello at amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index b3ca911e55d61..71b783b4abf39 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -4655,7 +4655,6 @@ void amdgpu_device_fini_hw(struct amdgpu_device *adev)
 	}
 
 	/* disable all interrupts */
-	amdgpu_irq_disable_all(adev);
 	if (adev->mode_info.mode_config_initialized) {
 		if (!drm_drv_uses_atomic_modeset(adev_to_drm(adev)))
 			drm_helper_force_disable_all(adev_to_drm(adev));
@@ -4663,6 +4662,7 @@ void amdgpu_device_fini_hw(struct amdgpu_device *adev)
 			drm_atomic_helper_shutdown(adev_to_drm(adev));
 	}
 	amdgpu_fence_driver_hw_fini(adev);
+	amdgpu_irq_disable_all(adev);
 
 	if (adev->pm.sysfs_initialized)
 		amdgpu_pm_sysfs_fini(adev);
-- 
2.43.0



More information about the amd-gfx mailing list