Skip to content

Commit 3762d6c

Browse files
ShuichengLinrodrigovivi
authored andcommitted
drm/xe/gsc: Fix BO leak on error in query_compatibility_version()
When xe_gsc_read_out_header() fails, query_compatibility_version() returns directly instead of jumping to the out_bo label. This skips the xe_bo_unpin_map_no_vm() call, leaving the BO pinned and mapped with no remaining reference to free it. Fix by using goto out_bo so the error path properly cleans up the BO, consistent with the other error handling in the same function. Fixes: 0881cbe ("drm/xe/gsc: Query GSC compatibility version") Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Reviewed-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Link: https://patch.msgid.link/20260417163308.3416147-1-shuicheng.lin@intel.com Signed-off-by: Shuicheng Lin <shuicheng.lin@intel.com> (cherry picked from commit 8de86d0) Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
1 parent dc2d984 commit 3762d6c

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

drivers/gpu/drm/xe/xe_gsc.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ static int query_compatibility_version(struct xe_gsc *gsc)
166166
&rd_offset);
167167
if (err) {
168168
xe_gt_err(gt, "HuC: invalid GSC reply for version query (err=%d)\n", err);
169-
return err;
169+
goto out_bo;
170170
}
171171

172172
compat->major = version_query_rd(xe, &bo->vmap, rd_offset, proj_major);

0 commit comments

Comments
 (0)