Re: [PATCH v2] media: venus: flush all buffers in output plane streamoff

From: Dikshita Agarwal
Date: Fri Jan 12 2024 - 01:51:44 EST


Hi Bryan,

I realized later that I missed to add your reviewed-by tag to this v2
patch, Sorry for this silly mistake, will be more careful in future.

On 1/10/2024 11:42 AM, Dikshita Agarwal wrote:
> For scenarios, when source change is followed by VIDIOC_STREAMOFF
> on output plane, driver should discard any queued OUTPUT
> buffers, which are not decoded or dequeued.
> Flush with HFI_FLUSH_INPUT does not have any actual impact.
> So, fix it, by invoking HFI_FLUSH_ALL, which will flush all
> queued buffers.
>
> Fixes: 85872f861d4c ("media: venus: Mark last capture buffer")
> Signed-off-by: Dikshita Agarwal <quic_dikshita@xxxxxxxxxxx>
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@xxxxxxxxxx>
> ---
> Changes since v1:
> - Added fixes tag (Bryan)
>
> drivers/media/platform/qcom/venus/vdec.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/qcom/venus/vdec.c b/drivers/media/platform/qcom/venus/vdec.c
> index 29130a9..0d2ab95 100644
> --- a/drivers/media/platform/qcom/venus/vdec.c
> +++ b/drivers/media/platform/qcom/venus/vdec.c
> @@ -1255,7 +1255,7 @@ static int vdec_stop_output(struct venus_inst *inst)
> break;
> case VENUS_DEC_STATE_INIT:
> case VENUS_DEC_STATE_CAPTURE_SETUP:
> - ret = hfi_session_flush(inst, HFI_FLUSH_INPUT, true);
> + ret = hfi_session_flush(inst, HFI_FLUSH_ALL, true);
> break;
> default:
> break;