From: Eric Huang Date: Thu, 6 Jun 2024 15:37:20 +0000 (-0400) Subject: drm/amdgpu: fix NULL pointer in amdgpu_reset_get_desc X-Git-Tag: v6.11-rc1~141^2~18^2~161 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7bed1df814cd61029f56eecd322e23190d50d93b;p=thirdparty%2Flinux.git drm/amdgpu: fix NULL pointer in amdgpu_reset_get_desc amdgpu_job_ring may return NULL, which causes kernel NULL pointer error, using another way to print ring name instead of ring->name. Suggested-by: Lijo Lazar Signed-off-by: Eric Huang Acked-by: Alex Deucher Reviewed-by: Lijo Lazar Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c index 9deb41d61e8d1..66c1a868c0e16 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_reset.c @@ -164,16 +164,14 @@ void amdgpu_device_unlock_reset_domain(struct amdgpu_reset_domain *reset_domain) void amdgpu_reset_get_desc(struct amdgpu_reset_context *rst_ctxt, char *buf, size_t len) { - struct amdgpu_ring *ring; - if (!buf || !len) return; switch (rst_ctxt->src) { case AMDGPU_RESET_SRC_JOB: if (rst_ctxt->job) { - ring = amdgpu_job_ring(rst_ctxt->job); - snprintf(buf, len, "job hang on ring:%s", ring->name); + snprintf(buf, len, "job hang on ring:%s", + rst_ctxt->job->base.sched->name); } else { strscpy(buf, "job hang", len); }