Re: [PATCH] media: mediatek: vcodec: Handle invalid decoder vsi

From: Nicolas Dufresne
Date: Fri Mar 22 2024 - 10:45:01 EST


Hi,

Le mercredi 20 mars 2024 à 14:13 +0800, Irui Wang a écrit :
> Handle invalid decoder vsi in vpu_dec_init to ensure the decoder vsi is
> valid for future use.
>
> Signed-off-by: Irui Wang <irui.wang@xxxxxxxxxxxx>
> ---
> .../media/platform/mediatek/vcodec/decoder/vdec_vpu_if.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/drivers/media/platform/mediatek/vcodec/decoder/vdec_vpu_if.c b/drivers/media/platform/mediatek/vcodec/decoder/vdec_vpu_if.c
> index 82e57ae983d5..17770993fe5a 100644
> --- a/drivers/media/platform/mediatek/vcodec/decoder/vdec_vpu_if.c
> +++ b/drivers/media/platform/mediatek/vcodec/decoder/vdec_vpu_if.c
> @@ -231,6 +231,12 @@ int vpu_dec_init(struct vdec_vpu_inst *vpu)
> mtk_vdec_debug(vpu->ctx, "vdec_inst=%p", vpu);
>
> err = vcodec_vpu_send_msg(vpu, (void *)&msg, sizeof(msg));
> +
> + if (IS_ERR_OR_NULL(vpu->vsi)) {
> + mtk_vdec_err(vpu->ctx, "invalid vdec vsi, status=%d", err);
> + return -EINVAL;
> + }
> +

Make sense, though on the cosmetic side, were is the err value from if the vsi
pointer is NULL ?

Nicolas

> mtk_vdec_debug(vpu->ctx, "- ret=%d", err);
> return err;
> }