From: Dikshita Agarwal <quic_dikshita@quicinc.com>
To: Bryan O'Donoghue <bryan.odonoghue@linaro.org>,
Vikash Garodia <quic_vgarodia@quicinc.com>,
Abhinav Kumar <quic_abhinavk@quicinc.com>,
"Mauro Carvalho Chehab" <mchehab@kernel.org>,
Stefan Schmidt <stefan.schmidt@linaro.org>,
Hans Verkuil <hverkuil@xs4all.nl>,
"Bjorn Andersson" <andersson@kernel.org>,
Konrad Dybcio <konradybcio@kernel.org>,
"Rob Herring" <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
"Conor Dooley" <conor+dt@kernel.org>
Cc: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>,
Neil Armstrong <neil.armstrong@linaro.org>,
Nicolas Dufresne <nicolas.dufresne@collabora.com>,
<linux-media@vger.kernel.org>, <linux-arm-msm@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <devicetree@vger.kernel.org>,
<20250417-topic-sm8x50-iris-v10-v7-0-f020cb1d0e98@linaro.org>,
<20250424-qcs8300_iris-v5-0-f118f505c300@quicinc.com>,
<stable@vger.kernel.org>
Subject: Re: [PATCH v2 01/23] media: iris: Skip destroying internal buffer if not dequeued
Date: Tue, 29 Apr 2025 16:28:00 +0530 [thread overview]
Message-ID: <2c431232-e0d6-1e6c-cd22-a912b5f08f7a@quicinc.com> (raw)
In-Reply-To: <a056266e-612d-4abf-916f-3db49b00dbde@linaro.org>
On 4/29/2025 3:13 PM, Bryan O'Donoghue wrote:
> On 28/04/2025 10:28, Dikshita Agarwal wrote:
>> + /*
>> + * during stream on, skip destroying internal(DPB) buffer
>> + * if firmware did not return it.
>> + * during close, destroy all buffers irrespectively.
>> + */
>> + if (!force && buf->attr & BUF_ATTR_QUEUED)
>> + continue;
>> +
>
> What's the effect of the firmware not having dequeued the buffer though ?
>
> My main concern here is APSS and firmware have a different view of DMA memory.
>
> We release on the APSS side but firmware has not.
>
> Surely failure to release buffers by the time we get to Linux::close() is a
> failure of the software contract sufficient to require resetting the
> firmware ?
>
> i.e. we release memory on the APSS side but firmware writes into it anyway ...
>
As I mentioned earlier as well, during STOP issued before close, firmware
is expected to release all these internal buffers and the check I added now
in this patch will also ensures that.
Firmware also has a check to make sure all buffers queued are released as
part of STOP and then only firmware sends the STOP_DONE response to driver.
STOP is a synchronous call and driver doesn't proceed without receiving the
response for the same from firmware.
So we will never run into this issue where driver release buffers which are
still being accessed by firmware.
Please note, these are internal buffers which are allocated and managed by
driver only.
Thanks,
Dikshita
> ?
>
> ---
> bod
next prev parent reply other threads:[~2025-04-29 10:58 UTC|newest]
Thread overview: 59+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-28 9:28 [PATCH v2 00/23] Add support for HEVC and VP9 codecs in decoder Dikshita Agarwal
2025-04-28 9:28 ` [PATCH v2 01/23] media: iris: Skip destroying internal buffer if not dequeued Dikshita Agarwal
2025-04-29 9:24 ` Vikash Garodia
2025-04-29 9:27 ` Vikash Garodia
2025-04-29 11:07 ` Dikshita Agarwal
2025-04-29 9:43 ` Bryan O'Donoghue
2025-04-29 10:58 ` Dikshita Agarwal [this message]
2025-04-29 12:47 ` Nicolas Dufresne
2025-04-30 5:38 ` Dikshita Agarwal
2025-04-30 7:22 ` Vikash Garodia
2025-04-28 9:28 ` [PATCH v2 02/23] media: iris: Update CAPTURE format info based on OUTPUT format Dikshita Agarwal
2025-04-29 9:29 ` Vikash Garodia
2025-04-28 9:28 ` [PATCH v2 03/23] media: iris: Add handling for corrupt and drop frames Dikshita Agarwal
2025-04-29 9:35 ` Vikash Garodia
2025-04-28 9:28 ` [PATCH v2 04/23] media: iris: Avoid updating frame size to firmware during reconfig Dikshita Agarwal
2025-04-29 9:50 ` Vikash Garodia
2025-04-28 9:28 ` [PATCH v2 05/23] media: iris: Send V4L2_BUF_FLAG_ERROR for buffers with 0 filled length Dikshita Agarwal
2025-04-29 10:00 ` Vikash Garodia
2025-04-28 9:28 ` [PATCH v2 06/23] media: iris: Drop port check for session property response Dikshita Agarwal
2025-04-29 10:04 ` Vikash Garodia
2025-04-28 9:28 ` [PATCH v2 07/23] media: iris: Add handling for no show frames Dikshita Agarwal
2025-04-29 10:06 ` Vikash Garodia
2025-04-28 9:28 ` [PATCH v2 08/23] media: iris: Improve last flag handling Dikshita Agarwal
2025-04-29 10:17 ` Vikash Garodia
2025-04-28 9:28 ` [PATCH v2 09/23] media: iris: Skip flush on first sequence change Dikshita Agarwal
2025-04-29 10:19 ` Vikash Garodia
2025-04-28 9:28 ` [PATCH v2 10/23] media: iris: Prevent HFI queue writes when core is in deinit state Dikshita Agarwal
2025-04-29 10:23 ` Vikash Garodia
2025-04-28 9:28 ` [PATCH v2 11/23] media: iris: Remove redundant buffer count check in stream off Dikshita Agarwal
2025-04-29 10:24 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 12/23] media: iris: Remove deprecated property setting to firmware Dikshita Agarwal
2025-04-29 10:26 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 13/23] media: iris: Fix missing function pointer initialization Dikshita Agarwal
2025-04-29 10:30 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 14/23] media: iris: Fix NULL pointer dereference Dikshita Agarwal
2025-04-28 9:40 ` Dan Carpenter
2025-04-28 12:10 ` Dikshita Agarwal
2025-04-28 12:38 ` Dan Carpenter
2025-04-29 10:31 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 15/23] media: iris: Fix typo in depth variable Dikshita Agarwal
2025-04-29 10:32 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 16/23] media: iris: Add a comment to explain usage of MBPS Dikshita Agarwal
2025-04-29 10:34 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 17/23] media: iris: Track flush responses to prevent premature completion Dikshita Agarwal
2025-04-30 10:40 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 18/23] media: iris: Fix buffer preparation failure during resolution change Dikshita Agarwal
2025-04-29 10:46 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 19/23] media: iris: Add HEVC and VP9 formats for decoder Dikshita Agarwal
2025-04-30 10:29 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 20/23] media: iris: Add platform capabilities for HEVC and VP9 decoders Dikshita Agarwal
2025-04-30 10:30 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 21/23] media: iris: Set mandatory properties " Dikshita Agarwal
2025-04-30 10:32 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 22/23] media: iris: Add internal buffer calculation " Dikshita Agarwal
2025-04-30 10:33 ` Vikash Garodia
2025-04-28 9:29 ` [PATCH v2 23/23] media: iris: Add codec specific check for VP9 decoder drain handling Dikshita Agarwal
2025-04-30 10:35 ` Vikash Garodia
2025-04-28 11:07 ` [PATCH v2 00/23] Add support for HEVC and VP9 codecs in decoder Dmitry Baryshkov
2025-04-28 12:11 ` Dikshita Agarwal
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2c431232-e0d6-1e6c-cd22-a912b5f08f7a@quicinc.com \
--to=quic_dikshita@quicinc.com \
--cc=20250417-topic-sm8x50-iris-v10-v7-0-f020cb1d0e98@linaro.org \
--cc=20250424-qcs8300_iris-v5-0-f118f505c300@quicinc.com \
--cc=andersson@kernel.org \
--cc=bryan.odonoghue@linaro.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.baryshkov@oss.qualcomm.com \
--cc=hverkuil@xs4all.nl \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=neil.armstrong@linaro.org \
--cc=nicolas.dufresne@collabora.com \
--cc=quic_abhinavk@quicinc.com \
--cc=quic_vgarodia@quicinc.com \
--cc=robh@kernel.org \
--cc=stable@vger.kernel.org \
--cc=stefan.schmidt@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox