aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorColin Ian King <colin.i.king@gmail.com>2024-10-09 17:05:10 +0100
committerThomas Hellström <thomas.hellstrom@linux.intel.com>2024-10-10 14:53:28 +0200
commit46bcb0a1214ac6677df8660ac0f6bdf1eff27e8f (patch)
treec5579b2abb7ec3deb9a6a3c3123004490c068b3a
parentdrm/xe: fix unbalanced rpm put() with declare_wedged() (diff)
downloadlinux-rng-46bcb0a1214ac6677df8660ac0f6bdf1eff27e8f.tar.xz
linux-rng-46bcb0a1214ac6677df8660ac0f6bdf1eff27e8f.zip
drm/xe/guc: Fix inverted logic on snapshot->copy check
Currently the check to see if snapshot->copy has been allocated is inverted and ends up dereferencing snapshot->copy when free'ing objects in the array when it is null or not free'ing the objects when snapshot->copy is allocated. Fix this by using the correct non-null pointer check logic. Fixes: d8ce1a977226 ("drm/xe/guc: Use a two stage dump for GuC logs and add more info") Signed-off-by: Colin Ian King <colin.i.king@gmail.com> Reviewed-by: John Harrison <John.C.Harrison@Intel.com> Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20241009160510.372195-1-colin.i.king@gmail.com
-rw-r--r--drivers/gpu/drm/xe/xe_guc_log.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/xe/xe_guc_log.c b/drivers/gpu/drm/xe/xe_guc_log.c
index 93921f04153f..cc70f448d879 100644
--- a/drivers/gpu/drm/xe/xe_guc_log.c
+++ b/drivers/gpu/drm/xe/xe_guc_log.c
@@ -122,7 +122,7 @@ void xe_guc_log_snapshot_free(struct xe_guc_log_snapshot *snapshot)
if (!snapshot)
return;
- if (!snapshot->copy) {
+ if (snapshot->copy) {
for (i = 0; i < snapshot->num_chunks; i++)
kfree(snapshot->copy[i]);
kfree(snapshot->copy);