Re: [PATCH] media: verisilicon: av1: Fix reference video buffer pointer assignment

From: Nicolas Dufresne
Date: Tue Sep 10 2024 - 15:44:57 EST


Hi,

Le mardi 10 septembre 2024 à 14:10 +0000, Benjamin Gaignard a écrit :
> Always get new destination buffer for reference frame because nothing
> garanty the one set previously is still valid or unused.

Mind documenting here which tests got fixed with this change ?

>
> Fixes: 727a400686a2 ("media: verisilicon: Add Rockchip AV1 decoder")
> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxxxxx>
> ---
> .../media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c b/drivers/media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c
> index 372dfcd0fcd9..2b9a1047479c 100644
> --- a/drivers/media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c
> +++ b/drivers/media/platform/verisilicon/rockchip_vpu981_hw_av1_dec.c
> @@ -161,8 +161,7 @@ static int rockchip_vpu981_av1_dec_frame_ref(struct hantro_ctx *ctx,
> av1_dec->frame_refs[i].timestamp = timestamp;
> av1_dec->frame_refs[i].frame_type = frame->frame_type;
> av1_dec->frame_refs[i].order_hint = frame->order_hint;
> - if (!av1_dec->frame_refs[i].vb2_ref)
> - av1_dec->frame_refs[i].vb2_ref = hantro_get_dst_buf(ctx);
> + av1_dec->frame_refs[i].vb2_ref = hantro_get_dst_buf(ctx);

Good catch, would still be nice to improve the commit message.

Reviewed-by: Nicolas Dufresne <nicolas.dufresne@xxxxxxxxxxxxx>

>
> for (j = 0; j < V4L2_AV1_TOTAL_REFS_PER_FRAME; j++)
> av1_dec->frame_refs[i].order_hints[j] = frame->order_hints[j];