[AMD Official Use Only - Internal Distribution Only] Reviewed-by: Jack Zhang <Jack.Zhang1@xxxxxxx> -----Original Message----- From: Jingwen Chen <Jingwen.Chen2@xxxxxxx> Sent: Friday, March 5, 2021 2:12 PM To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx Cc: Chen, Horace <Horace.Chen@xxxxxxx>; Zhang, Jack (Jian) <Jack.Zhang1@xxxxxxx>; Chen, JingWen <JingWen.Chen2@xxxxxxx> Subject: [PATCH] drm/amd/amdgpu: add fini virt data exchange to ip_suspend [Why] when try to shutdown guest vm in sriov mode, virt data exchange is not fini. After vram lost, trying to write vram could hang cpu. [How] add fini virt data exchange in ip_suspend Signed-off-by: Jingwen Chen <Jingwen.Chen2@xxxxxxx> --- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index a11760ec3924..bec725b50c1b 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -2774,8 +2774,10 @@ int amdgpu_device_ip_suspend(struct amdgpu_device *adev) { int r; -if (amdgpu_sriov_vf(adev)) +if (amdgpu_sriov_vf(adev)) { +amdgpu_virt_fini_data_exchange(adev); amdgpu_virt_request_full_gpu(adev, false); +} r = amdgpu_device_ip_suspend_phase1(adev); if (r) -- 2.25.1 _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx