Variable num_relocs is not effectively used, so delete it. Having two labels seems somewhat redundant; the 'out_free_release' can be removed, leaving 'out_free_bos'.
drivers/gpu/drm/qxl/qxl_ioctl.c:148:14: warning: variable 'num_relocs' set but not used. Reported-by: Abaci Robot <ab...@linux.alibaba.com> Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=8316 Signed-off-by: Jiapeng Chong <jiapeng.ch...@linux.alibaba.com> --- drivers/gpu/drm/qxl/qxl_ioctl.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/qxl/qxl_ioctl.c b/drivers/gpu/drm/qxl/qxl_ioctl.c index dd0f834d881c..c1dd5709d37a 100644 --- a/drivers/gpu/drm/qxl/qxl_ioctl.c +++ b/drivers/gpu/drm/qxl/qxl_ioctl.c @@ -145,7 +145,7 @@ static int qxl_process_single_command(struct qxl_device *qdev, struct qxl_release *release; struct qxl_bo *cmd_bo; void *fb_cmd; - int i, ret, num_relocs; + int i, ret; int unwritten; switch (cmd->type) { @@ -196,11 +196,10 @@ static int qxl_process_single_command(struct qxl_device *qdev, if (unwritten) { DRM_ERROR("got unwritten %d\n", unwritten); ret = -EFAULT; - goto out_free_release; + goto out_free_bos; } /* fill out reloc info structs */ - num_relocs = 0; for (i = 0; i < cmd->relocs_num; ++i) { struct drm_qxl_reloc reloc; struct drm_qxl_reloc __user *u = u64_to_user_ptr(cmd->relocs); @@ -230,7 +229,6 @@ static int qxl_process_single_command(struct qxl_device *qdev, reloc_info[i].dst_bo = cmd_bo; reloc_info[i].dst_offset = reloc.dst_offset + release->release_offset; } - num_relocs++; /* reserve and validate the reloc dst bo */ if (reloc.reloc_type == QXL_RELOC_TYPE_BO || reloc.src_handle) { @@ -261,7 +259,6 @@ static int qxl_process_single_command(struct qxl_device *qdev, ret = qxl_push_command_ring_release(qdev, release, cmd->type, true); out_free_bos: -out_free_release: if (ret) qxl_release_free(qdev, release); out_free_reloc: -- 2.20.1.7.g153144c