All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] accel/ivpu: Reset cmdq->db_id on register failure
@ 2025-09-15 10:34 Karol Wachowski
  2025-09-15 20:36 ` Lizhi Hou
  0 siblings, 1 reply; 3+ messages in thread
From: Karol Wachowski @ 2025-09-15 10:34 UTC (permalink / raw)
  To: dri-devel
  Cc: oded.gabbay, jeff.hugo, maciej.falkowski, lizhi.hou,
	Karol Wachowski

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.

Signed-off-by: Karol Wachowski <karol.wachowski@linux.intel.com>
---
 drivers/accel/ivpu/ivpu_job.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/accel/ivpu/ivpu_job.c b/drivers/accel/ivpu/ivpu_job.c
index 060f1fc031d3..fa1720fa06a4 100644
--- a/drivers/accel/ivpu/ivpu_job.c
+++ b/drivers/accel/ivpu/ivpu_job.c
@@ -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;
 }
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] accel/ivpu: Reset cmdq->db_id on register failure
  2025-09-15 10:34 [PATCH] accel/ivpu: Reset cmdq->db_id on register failure Karol Wachowski
@ 2025-09-15 20:36 ` Lizhi Hou
  2025-09-18  6:11   ` Karol Wachowski
  0 siblings, 1 reply; 3+ messages in thread
From: Lizhi Hou @ 2025-09-15 20:36 UTC (permalink / raw)
  To: Karol Wachowski, dri-devel; +Cc: oded.gabbay, jeff.hugo, maciej.falkowski

Reviewed-by: Lizhi Hou <lizhi.hou@amd.com>

On 9/15/25 03:34, Karol Wachowski wrote:
> 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.
>
> Signed-off-by: Karol Wachowski <karol.wachowski@linux.intel.com>
> ---
>   drivers/accel/ivpu/ivpu_job.c | 6 ++++--
>   1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/accel/ivpu/ivpu_job.c b/drivers/accel/ivpu/ivpu_job.c
> index 060f1fc031d3..fa1720fa06a4 100644
> --- a/drivers/accel/ivpu/ivpu_job.c
> +++ b/drivers/accel/ivpu/ivpu_job.c
> @@ -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;
>   }

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] accel/ivpu: Reset cmdq->db_id on register failure
  2025-09-15 20:36 ` Lizhi Hou
@ 2025-09-18  6:11   ` Karol Wachowski
  0 siblings, 0 replies; 3+ messages in thread
From: Karol Wachowski @ 2025-09-18  6:11 UTC (permalink / raw)
  To: Lizhi Hou, dri-devel; +Cc: oded.gabbay, jeff.hugo, maciej.falkowski

Applied to drm-misc-next

On 9/15/2025 10:36 PM, Lizhi Hou wrote:
> Reviewed-by: Lizhi Hou <lizhi.hou@amd.com>
>
> On 9/15/25 03:34, Karol Wachowski wrote:
>> 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.
>>
>> Signed-off-by: Karol Wachowski <karol.wachowski@linux.intel.com>
>> ---
>>   drivers/accel/ivpu/ivpu_job.c | 6 ++++--
>>   1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/accel/ivpu/ivpu_job.c
>> b/drivers/accel/ivpu/ivpu_job.c
>> index 060f1fc031d3..fa1720fa06a4 100644
>> --- a/drivers/accel/ivpu/ivpu_job.c
>> +++ b/drivers/accel/ivpu/ivpu_job.c
>> @@ -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;
>>   }

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-09-18  6:11 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-15 10:34 [PATCH] accel/ivpu: Reset cmdq->db_id on register failure Karol Wachowski
2025-09-15 20:36 ` Lizhi Hou
2025-09-18  6:11   ` Karol Wachowski

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.