From: Alex Deucher <alexdeucher@xxxxxxxxx> The ordering of psp_tmr_terminate() and psp_asd_unload() got reversed when the patches were applied to stable. This patch does not exist in Linus' tree because the ordering is correct there. It got reversed when the patches were applied to stable. This patch is for stable only. Fixes: 22ff658396b446 ("drm/amdgpu: asd function needs to be unloaded in suspend phase") Fixes: 2c41c968c6f648 ("drm/amdgpu: add TMR destory function for psp") Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx> Cc: stable@xxxxxxxxxxxxxxx # 5.7.x Cc: Huang Rui <ray.huang@xxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c @@ -1679,15 +1679,15 @@ static int psp_suspend(void *handle) } } - ret = psp_tmr_terminate(psp); + ret = psp_asd_unload(psp); if (ret) { - DRM_ERROR("Falied to terminate tmr\n"); + DRM_ERROR("Failed to unload asd\n"); return ret; } - ret = psp_asd_unload(psp); + ret = psp_tmr_terminate(psp); if (ret) { - DRM_ERROR("Failed to unload asd\n"); + DRM_ERROR("Falied to terminate tmr\n"); return ret; }