Re: [PATCH v1 06/18] media: hantro: Make sure that ctx->codex_ops is set

From: Ezequiel Garcia
Date: Wed Feb 17 2021 - 15:12:54 EST


On Wed, 2021-02-17 at 09:02 +0100, Benjamin Gaignard wrote:
> Do not try to call ctx->codec_ops->done if ctx->codec_ops is not set.
>

If codec_ops is not set for a codec variant,
things will go south really fast. See hantro_start_streaming
for instance.

I think you can just drop this patch.

Thanks,
Ezequiel

> Signed-off-by: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxxxxx>
> Signed-off-by: Ezequiel Garcia <ezequiel@xxxxxxxxxxxxx>
> Signed-off-by: Adrian Ratiu <adrian.ratiu@xxxxxxxxxxxxx>
> ---
>  drivers/staging/media/hantro/hantro_drv.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/staging/media/hantro/hantro_drv.c b/drivers/staging/media/hantro/hantro_drv.c
> index 0d58209fc55c..0570047c7fa0 100644
> --- a/drivers/staging/media/hantro/hantro_drv.c
> +++ b/drivers/staging/media/hantro/hantro_drv.c
> @@ -93,7 +93,8 @@ void hantro_irq_done(struct hantro_dev *vpu,
>          * and will take care of finishing the job.
>          */
>         if (cancel_delayed_work(&vpu->watchdog_work)) {
> -               if (result == VB2_BUF_STATE_DONE && ctx->codec_ops->done)
> +               if (result == VB2_BUF_STATE_DONE &&
> +                   ctx->codec_ops && ctx->codec_ops->done)
>                         ctx->codec_ops->done(ctx);
>                 hantro_job_finish(vpu, ctx, result);
>         }