<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/media/pci/intel, 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-08-28T14:34:27Z</updated>
<entry>
<title>media: ivsc: Fix crash at shutdown due to missing mei_cldev_disable() calls</title>
<updated>2025-08-28T14:34:27Z</updated>
<author>
<name>Hans de Goede</name>
</author>
<published>2025-06-21T14:00:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1dfe73394dcfc9b049c8da0dc181c45f156a5f49'/>
<id>urn:sha1:1dfe73394dcfc9b049c8da0dc181c45f156a5f49</id>
<content type='text'>
commit 0c92c49fc688cfadacc47ae99b06a31237702e9e upstream.

Both the ACE and CSI driver are missing a mei_cldev_disable() call in
their remove() function.

This causes the mei_cl client to stay part of the mei_device-&gt;file_list
list even though its memory is freed by mei_cl_bus_dev_release() calling
kfree(cldev-&gt;cl).

This leads to a use-after-free when mei_vsc_remove() runs mei_stop()
which first removes all mei bus devices calling mei_ace_remove() and
mei_csi_remove() followed by mei_cl_bus_dev_release() and then calls
mei_cl_all_disconnect() which walks over mei_device-&gt;file_list dereferecing
the just freed cldev-&gt;cl.

And mei_vsc_remove() it self is run at shutdown because of the
platform_device_unregister(tp-&gt;pdev) in vsc_tp_shutdown()

When building a kernel with KASAN this leads to the following KASAN report:

[ 106.634504] ==================================================================
[ 106.634623] BUG: KASAN: slab-use-after-free in mei_cl_set_disconnected (drivers/misc/mei/client.c:783) mei
[ 106.634683] Read of size 4 at addr ffff88819cb62018 by task systemd-shutdow/1
[ 106.634729]
[ 106.634767] Tainted: [E]=UNSIGNED_MODULE
[ 106.634770] Hardware name: Dell Inc. XPS 16 9640/09CK4V, BIOS 1.12.0 02/10/2025
[ 106.634773] Call Trace:
[ 106.634777]  &lt;TASK&gt;
...
[ 106.634871] kasan_report (mm/kasan/report.c:221 mm/kasan/report.c:636)
[ 106.634901] mei_cl_set_disconnected (drivers/misc/mei/client.c:783) mei
[ 106.634921] mei_cl_all_disconnect (drivers/misc/mei/client.c:2165 (discriminator 4)) mei
[ 106.634941] mei_reset (drivers/misc/mei/init.c:163) mei
...
[ 106.635042] mei_stop (drivers/misc/mei/init.c:348) mei
[ 106.635062] mei_vsc_remove (drivers/misc/mei/mei_dev.h:784 drivers/misc/mei/platform-vsc.c:393) mei_vsc
[ 106.635066] platform_remove (drivers/base/platform.c:1424)

Add the missing mei_cldev_disable() calls so that the mei_cl gets removed
from mei_device-&gt;file_list before it is freed to fix this.

Fixes: 78876f71b3e9 ("media: pci: intel: ivsc: Add ACE submodule")
Fixes: 29006e196a56 ("media: pci: intel: ivsc: Add CSI submodule")
Cc: stable@vger.kernel.org
Signed-off-by: Hans de Goede &lt;hansg@kernel.org&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&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: ipu6: isys: Use correct pads for xlate_streams()</title>
<updated>2025-08-28T14:34:27Z</updated>
<author>
<name>Sakari Ailus</name>
</author>
<published>2025-06-02T21:08:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6b07fdbe3dbf3f97a0b35820f4e5b933ef457502'/>
<id>urn:sha1:6b07fdbe3dbf3f97a0b35820f4e5b933ef457502</id>
<content type='text'>
commit ff49672a28f3a856717f09d61380e524e243121f upstream.

The pad argument to v4l2_subdev_state_xlate_streams() is incorrect, static
pad number is used for the source pad even though the pad number is
dependent on the stream. Fix it.

Fixes: 3a5c59ad926b ("media: ipu6: Rework CSI-2 sub-device streaming control")
Cc: stable@vger.kernel.org
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&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: ipu-bridge: Add _HID for OV5670</title>
<updated>2025-08-20T16:41:24Z</updated>
<author>
<name>Daniel Scally</name>
</author>
<published>2025-05-20T13:17:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=dc4b49f8549765d5bddd6cbf9b45ba44d79b0242'/>
<id>urn:sha1:dc4b49f8549765d5bddd6cbf9b45ba44d79b0242</id>
<content type='text'>
[ Upstream commit 484f8bec3ddb453321ef0b8621c25de6ce3d0302 ]

The OV5670 is found on Dell 7212 tablets paired with an IPU3 ISP
and needs to be connected by the ipu-bridge. Add it to the list
of supported devices.

Signed-off-by: Daniel Scally &lt;dan.scally@ideasonboard.com&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&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: intel/ipu6: Change deprecated lock comment</title>
<updated>2025-05-06T11:06:31Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2025-05-02T15:44:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=034237ef15511bca8bc3c85da61bc0b204a3c975'/>
<id>urn:sha1:034237ef15511bca8bc3c85da61bc0b204a3c975</id>
<content type='text'>
pre_streamon_queued is no longer used. The lock now is protecting active
and incoming lists.

Signed-off-by: Stanislaw Gruszka &lt;stanislaw.gruszka@linux.intel.com&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
<entry>
<title>media: intel/ipu6: Remove line_align</title>
<updated>2025-05-06T11:06:31Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2025-05-02T15:44:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c12bbc2820f6190d79c7e4cd695ce68df610f966'/>
<id>urn:sha1:c12bbc2820f6190d79c7e4cd695ce68df610f966</id>
<content type='text'>
isys-&gt;line_align value is only used in one place and we can just use
the proper value directly there.

Signed-off-by: Stanislaw Gruszka &lt;stanislaw.gruszka@linux.intel.com&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
<entry>
<title>media: intel/ipu6: Remove pin_ready function pointer</title>
<updated>2025-05-06T11:06:31Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2025-05-02T15:44:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c139c1ac06bea6e325bb8f28207d170076fa12ab'/>
<id>urn:sha1:c139c1ac06bea6e325bb8f28207d170076fa12ab</id>
<content type='text'>
We can call ipu6_isys_queue_buf_ready() directly. The only current
usage is pin_ready pointer is to check if pin was prepared before
IPU6_FW_ISYS_RESP_TYPE_PIN_DATA_READY interrupt, we can use queue
pointer for that purpose.

Signed-off-by: Stanislaw Gruszka &lt;stanislaw.gruszka@linux.intel.com&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
<entry>
<title>media: intel/ipu6: Remove unused ipu6_isys_csi2_pdata</title>
<updated>2025-05-06T11:06:29Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2025-03-17T07:38:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3e51d14286451388d8b5acd5ac4777e98682422b'/>
<id>urn:sha1:3e51d14286451388d8b5acd5ac4777e98682422b</id>
<content type='text'>
The pointer to ipu6_isys_csi2_pdata is not used.

Signed-off-by: Stanislaw Gruszka &lt;stanislaw.gruszka@linux.intel.com&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
<entry>
<title>media: intel/ipu6: Fix dma mask for non-secure mode</title>
<updated>2025-04-25T08:15:35Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2025-04-10T09:47:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0209916ebe2475079ce6d8dc4114afbc0ccad1c2'/>
<id>urn:sha1:0209916ebe2475079ce6d8dc4114afbc0ccad1c2</id>
<content type='text'>
We use dma_get_mask() of auxdev device for calculate iova pfn limit.
This is always 32 bit mask as we do not initialize the mask (and we can
not do so, since dev-&gt;dev_mask is NULL anyways for auxdev).

Since we need 31 bit mask for non-secure mode use mmu_info-&gt;aperture_end
which is properly initialized to correct mask for both modes.

Fixes: daabc5c64703 ("media: ipu6: not override the dma_ops of device in driver")
Cc: stable@vger.kernel.org
Signed-off-by: Stanislaw Gruszka &lt;stanislaw.gruszka@linux.intel.com&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
<entry>
<title>media: intel/ipu6: Minor dma_mask clenaup</title>
<updated>2025-04-25T08:15:35Z</updated>
<author>
<name>Stanislaw Gruszka</name>
</author>
<published>2025-04-10T09:52:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1284c9693953aed2a9974a5a384ce2a42a1b9ae8'/>
<id>urn:sha1:1284c9693953aed2a9974a5a384ce2a42a1b9ae8</id>
<content type='text'>
Remove unused dma_mask field and ipu-dma.h includes.

Signed-off-by: Stanislaw Gruszka &lt;stanislaw.gruszka@linux.intel.com&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
<entry>
<title>media: intel/ipu6: Replace deprecated PCI functions</title>
<updated>2025-04-25T08:15:29Z</updated>
<author>
<name>Philipp Stanner</name>
</author>
<published>2025-04-04T13:53:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3bb6339e2a133abf8e48d12114e6bb11820e36c0'/>
<id>urn:sha1:3bb6339e2a133abf8e48d12114e6bb11820e36c0</id>
<content type='text'>
pcim_iomap_table() and pcim_iomap_regions() have been deprecated.
Furthermore, the "name" parameter in pcim_iomap_regions() and its
successor, pcim_iomap_region(), should always reflect the driver name,
whereas currently it is the device's name.

Replace the deprecated functions with pcim_iomap_region() and pass the
actual driver name.

Signed-off-by: Philipp Stanner &lt;phasta@kernel.org&gt;
Signed-off-by: Sakari Ailus &lt;sakari.ailus@linux.intel.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil@xs4all.nl&gt;
</content>
</entry>
</feed>
