RE: [PATCH v2] media: venus: dec: Fix handling of the start cmd

From: Vikash Garodia
Date: Tue Feb 07 2023 - 04:54:45 EST


Hello Michal,
Thank you for raising a fix in video driver.

> -----Original Message-----
> From: Michał Krawczyk <mk@xxxxxxxxxxxx>
> Sent: Tuesday, February 7, 2023 2:48 PM
> To: Stanimir Varbanov <stanimir.k.varbanov@xxxxxxxxx>; Vikash Garodia
> (QUIC) <quic_vgarodia@xxxxxxxxxxx>
> Cc: Andy Gross <agross@xxxxxxxxxx>; Bjorn Andersson
> <andersson@xxxxxxxxxx>; Konrad Dybcio <konrad.dybcio@xxxxxxxxxx>; Mauro
> Carvalho Chehab <mchehab@xxxxxxxxxx>; linux-media@xxxxxxxxxxxxxxx; linux-
> arm-msm@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; mw@xxxxxxxxxxxx
> Subject: Re: [PATCH v2] media: venus: dec: Fix handling of the start cmd
>
> WARNING: This email originated from outside of Qualcomm. Please be wary of
> any links or attachments, and do not enable macros.
>
> pon., 30 sty 2023 o 14:55 Michał Krawczyk <mk@xxxxxxxxxxxx> napisał(a):
> >
> > From: Michał Krawczyk <mk@xxxxxxxxxxxx>
> >
> > The decoder driver should clear the last_buffer_dequeued flag of the
> > capture queue upon receiving V4L2_DEC_CMD_START.
> >
> > The last_buffer_dequeued flag is set upon receiving EOS (which always
> > happens upon receiving V4L2_DEC_CMD_STOP).
> >
> > Without this patch, after issuing the V4L2_DEC_CMD_STOP and
> > V4L2_DEC_CMD_START, the vb2_dqbuf() function will always fail, even if
> > the buffers are completed by the hardware.
> >
> > Fixes: beac82904a87 ("media: venus: make decoder compliant with
> > stateful codec API")
> >
> > Signed-off-by: Michał Krawczyk <mk@xxxxxxxxxxxx>
>
> Hello,
>
> Did anyone have a chance to take a look at this patch? It's fairly simple, but lack
> of this fix can have a big impact on the V4L2 applications which implement the
> flush mechanism using the stop/start commands, especially in the middle of the
> video.

I have reviewed the patch, and the drain sequence handling looks good to me.
Could you share some details on the test client which you are using to catch this issue ?

> Thank you,
> Michał

Thanks,
Vikash