]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
drm/amdgpu: psp_ring_destroy cause psp->km_ring.ring_mem NULL
authorwentalou <Wentao.Lou@amd.com>
Tue, 18 Dec 2018 07:42:08 +0000 (15:42 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 14 Jan 2019 20:04:31 +0000 (15:04 -0500)
psp_ring_destroy inside psp_load_fw cause psp->km_ring.ring_mem NULL.
Call Trace occurred when psp_cmd_submit.
should be psp_ring_stop instead.

Reviewed-by: Xiangliang Yu <Xiangliang.Yu@amd.com>
Signed-off-by: Wentao Lou <Wentao.Lou@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c

index 7f5ce378873268b026828476c6fe6a77933c0605..8189a90637f7b25c1d64d9c186f9af40a1539955 100644 (file)
@@ -547,7 +547,7 @@ static int psp_load_fw(struct amdgpu_device *adev)
        struct psp_context *psp = &adev->psp;
 
        if (amdgpu_sriov_vf(adev) && adev->in_gpu_reset) {
-               psp_ring_destroy(psp, PSP_RING_TYPE__KM);
+               psp_ring_stop(psp, PSP_RING_TYPE__KM); /* should not destroy ring, only stop */
                goto skip_memalloc;
        }