<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/media/platform/qcom/iris/iris_buffer.c, branch linux-6.16.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.16.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-6.16.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2025-10-06T09:18:48Z</updated>
<entry>
<title>media: iris: Fix memory leak by freeing untracked persist buffer</title>
<updated>2025-10-06T09:18:48Z</updated>
<author>
<name>Dikshita Agarwal</name>
</author>
<published>2025-08-25T07:00:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c9e024e907cafafd6b094f69a0d0f5d18fd28876'/>
<id>urn:sha1:c9e024e907cafafd6b094f69a0d0f5d18fd28876</id>
<content type='text'>
commit 02a24f13b3a1d9da9f3de56aa5fdb7cc1fe167a2 upstream.

One internal buffer which is allocated only once per session was not
being freed during session close because it was not being tracked as
part of internal buffer list which resulted in a memory leak.

Add the necessary logic to explicitly free the untracked internal buffer
during session close to ensure all allocated memory is released
properly.

Fixes: 73702f45db81 ("media: iris: allocate, initialize and queue internal buffers")
Cc: stable@vger.kernel.org
Reviewed-by: Vikash Garodia &lt;quic_vgarodia@quicinc.com&gt;
Tested-by: Vikash Garodia &lt;quic_vgarodia@quicinc.com&gt; # X1E80100
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-HDK
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8650-HDK
Signed-off-by: Dikshita Agarwal &lt;quic_dikshita@quicinc.com&gt;
Tested-by: Bryan O'Donoghue &lt;bryan.odonoghue@linaro.org&gt; # x1e80100-crd
Signed-off-by: Bryan O'Donoghue &lt;bod@kernel.org&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil+cisco@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>media: iris: Skip destroying internal buffer if not dequeued</title>
<updated>2025-08-28T14:34:29Z</updated>
<author>
<name>Dikshita Agarwal</name>
</author>
<published>2025-05-09T08:38:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=be05123a14c191ea7fc23096013c37937fde4688'/>
<id>urn:sha1:be05123a14c191ea7fc23096013c37937fde4688</id>
<content type='text'>
commit 7c452ffda30c0460c568273993a3d3c611486467 upstream.

Firmware might hold the DPB buffers for reference in case of sequence
change, so skip destroying buffers for which QUEUED flag is not removed.

Cc: stable@vger.kernel.org
Fixes: 73702f45db81 ("media: iris: allocate, initialize and queue internal buffers")
Reviewed-by: Vikash Garodia &lt;quic_vgarodia@quicinc.com&gt;
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-QRD
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-HDK
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8650-QRD
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8650-HDK
Signed-off-by: Dikshita Agarwal &lt;quic_dikshita@quicinc.com&gt;
Tested-by: Vikash Garodia &lt;quic_vgarodia@quicinc.com&gt; # on sa8775p-ride
Signed-off-by: Bryan O'Donoghue &lt;bod@kernel.org&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>media: iris: Add handling for corrupt and drop frames</title>
<updated>2025-08-20T16:41:24Z</updated>
<author>
<name>Dikshita Agarwal</name>
</author>
<published>2025-05-09T08:39:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=04d29e70fdd2b5450222bc30e53dc90dcd65841d'/>
<id>urn:sha1:04d29e70fdd2b5450222bc30e53dc90dcd65841d</id>
<content type='text'>
[ Upstream commit b791dcfcba3a0c46fb3e2decab31d2340c5dc313 ]

Firmware attach DATACORRUPT/DROP buffer flags for the frames which
needs to be dropped, handle it by setting VB2_BUF_STATE_ERROR for these
buffers before calling buf_done.

Reviewed-by: Bryan O'Donoghue &lt;bryan.odonoghue@linaro.org&gt;
Acked-by: Vikash Garodia &lt;quic_vgarodia@quicinc.com&gt;
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-QRD
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-HDK
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8650-QRD
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8650-HDK
Signed-off-by: Dikshita Agarwal &lt;quic_dikshita@quicinc.com&gt;
Tested-by: Vikash Garodia &lt;quic_vgarodia@quicinc.com&gt; # on sa8775p-ride
Signed-off-by: Bryan O'Donoghue &lt;bod@kernel.org&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>media: iris: implement power scaling for vpu2 and vpu3</title>
<updated>2025-02-07T10:51:55Z</updated>
<author>
<name>Vedang Nagar</name>
</author>
<published>2025-02-07T07:55:05Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ef0baf36f72e84684666846544a513966442c1e4'/>
<id>urn:sha1:ef0baf36f72e84684666846544a513966442c1e4</id>
<content type='text'>
Implement power scaling including a specific vpu2 and vpu3 calculation
for clock and bus bandwidth, which depends on the hardware
configuration, codec format, resolution and frame rate.

Signed-off-by: Vedang Nagar &lt;quic_vnagar@quicinc.com&gt;
Tested-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt; # x1e80100 (Dell XPS 13 9345)
Reviewed-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt;
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-QRD
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-HDK
Signed-off-by: Dikshita Agarwal &lt;quic_dikshita@quicinc.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
<entry>
<title>media: iris: handle streamoff/on from client in dynamic resolution change</title>
<updated>2025-02-07T10:51:49Z</updated>
<author>
<name>Dikshita Agarwal</name>
</author>
<published>2025-02-07T07:55:02Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c1f8b2cc72ecda300894da679cde3a217e5b4411'/>
<id>urn:sha1:c1f8b2cc72ecda300894da679cde3a217e5b4411</id>
<content type='text'>
The decoder is stopped after it completes the dynamic resolution change
sequence. Handle VIDIOC_STREAMOFF() and VIDIOC_STREAMON() on the CAPTURE
queue to resume the decoding process.

Tested-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt; # x1e80100 (Dell XPS 13 9345)
Reviewed-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt;
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-QRD
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-HDK
Signed-off-by: Dikshita Agarwal &lt;quic_dikshita@quicinc.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
<entry>
<title>media: iris: implement vb2 ops for buf_queue and firmware response</title>
<updated>2025-02-07T10:51:45Z</updated>
<author>
<name>Dikshita Agarwal</name>
</author>
<published>2025-02-07T07:55:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=17f2a485ca673a1d60db1cac542d35e9b50e3254'/>
<id>urn:sha1:17f2a485ca673a1d60db1cac542d35e9b50e3254</id>
<content type='text'>
Implement the vb2 ops for the buf queue. These are the different buffer
attributes:
BUF_ATTR_DEFERRED - buffer queued by the client but not submitted to
                    firmware.
BUF_ATTR_PENDING_RELEASE - buffers requested to be released from
                           the firmware.
BUF_ATTR_QUEUED - buffers submitted to the firmware.
BUF_ATTR_DEQUEUED - buffers received from the firmware.
BUF_ATTR_BUFFER_DONE - buffers sent back to vb2.

Reviewed-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Tested-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt; # x1e80100 (Dell XPS 13 9345)
Reviewed-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt;
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-QRD
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-HDK
Signed-off-by: Dikshita Agarwal &lt;quic_dikshita@quicinc.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
<entry>
<title>media: iris: allocate, initialize and queue internal buffers</title>
<updated>2025-02-07T10:51:42Z</updated>
<author>
<name>Dikshita Agarwal</name>
</author>
<published>2025-02-07T07:54:59Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=73702f45db81b74897b2808aaa13484826156006'/>
<id>urn:sha1:73702f45db81b74897b2808aaa13484826156006</id>
<content type='text'>
Implement the functions for creating, queueing, releasing and destroying
the buffers for internal usage.

Tested-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt; # x1e80100 (Dell XPS 13 9345)
Reviewed-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt;
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-QRD
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-HDK
Signed-off-by: Dikshita Agarwal &lt;quic_dikshita@quicinc.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
<entry>
<title>media: iris: implement set properties to firmware during streamon</title>
<updated>2025-02-07T10:51:37Z</updated>
<author>
<name>Vedang Nagar</name>
</author>
<published>2025-02-07T07:54:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3a19d7b9e08b00969a28d0e137c0fbd7feaa1780'/>
<id>urn:sha1:3a19d7b9e08b00969a28d0e137c0fbd7feaa1780</id>
<content type='text'>
During the stream on operation, set some mandatory properties on the
firmware to start a session. Set all v4l2 properties, which are set by
the client, on to firmware, which is prepared with the dependency graph.

Signed-off-by: Vedang Nagar &lt;quic_vnagar@quicinc.com&gt;
Tested-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt; # x1e80100 (Dell XPS 13 9345)
Reviewed-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt;
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-QRD
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-HDK
Signed-off-by: Dikshita Agarwal &lt;quic_dikshita@quicinc.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
<entry>
<title>media: iris: implement reqbuf ioctl with vb2_queue_setup</title>
<updated>2025-02-07T10:51:24Z</updated>
<author>
<name>Dikshita Agarwal</name>
</author>
<published>2025-02-07T07:54:49Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=38fc8beaba55e06c8831f21a96ec5e33e2f1978f'/>
<id>urn:sha1:38fc8beaba55e06c8831f21a96ec5e33e2f1978f</id>
<content type='text'>
Implement the reqbuf IOCTL op and the vb2_queue_setup vb2 op in the
driver with necessary hooks.

Reviewed-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
Tested-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt; # x1e80100 (Dell XPS 13 9345)
Reviewed-by: Stefan Schmidt &lt;stefan.schmidt@linaro.org&gt;
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-QRD
Tested-by: Neil Armstrong &lt;neil.armstrong@linaro.org&gt; # on SM8550-HDK
Signed-off-by: Dikshita Agarwal &lt;quic_dikshita@quicinc.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
</feed>
