Commit 2274402a authored by Karol Wachowski's avatar Karol Wachowski
Browse files

accel/ivpu: Reset cmdq->db_id on register failure



Ensure that cmdq->db_id is reset to 0 if ivpu_jsm_register_db fails,
preventing potential reuse of invalid command queue with
unregistered doorbell.

Reviewed-by: default avatarLizhi Hou <lizhi.hou@amd.com>
Signed-off-by: default avatarKarol Wachowski <karol.wachowski@linux.intel.com>
Link: https://lore.kernel.org/r/20250915103421.830065-1-karol.wachowski@linux.intel.com
parent 457f4393
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -219,11 +219,13 @@ static int ivpu_register_db(struct ivpu_file_priv *file_priv, struct ivpu_cmdq *
		ret = ivpu_jsm_register_db(vdev, file_priv->ctx.id, cmdq->db_id,
					   cmdq->mem->vpu_addr, ivpu_bo_size(cmdq->mem));

	if (!ret)
	if (!ret) {
		ivpu_dbg(vdev, JOB, "DB %d registered to cmdq %d ctx %d priority %d\n",
			 cmdq->db_id, cmdq->id, file_priv->ctx.id, cmdq->priority);
	else
	} else {
		xa_erase(&vdev->db_xa, cmdq->db_id);
		cmdq->db_id = 0;
	}

	return ret;
}