Subject: CVE-2023-52647: media: nxp: imx8-isi: Check whether crossbar pad is non-NULL before access

From: Greg Kroah-Hartman <[email-masked]>

Description
===========

In the Linux kernel, the following vulnerability has been resolved:

media: nxp: imx8-isi: Check whether crossbar pad is non-NULL before access

When translating source to sink streams in the crossbar subdev, the
driver tries to locate the remote subdev connected to the sink pad. The
remote pad may be NULL, if userspace tries to enable a stream that ends
at an unconnected crossbar sink. When that occurs, the driver
dereferences the NULL pad, leading to a crash.

Prevent the crash by checking if the pad is NULL before using it, and
return an error if it is.

The Linux kernel CVE team has assigned CVE-2023-52647 to this issue.

Affected and fixed versions
===========================

	Issue introduced in 6.4 with commit cf21f328fcaf and fixed in 6.6.24 with commit c95318607fbe
	Issue introduced in 6.4 with commit cf21f328fcaf and fixed in 6.7.12 with commit c4bd29bf5b7f
	Issue introduced in 6.4 with commit cf21f328fcaf and fixed in 6.8.3 with commit 91c8ce42fcde
	Issue introduced in 6.4 with commit cf21f328fcaf and fixed in 6.9 with commit eb2f93210028

Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.

Unaffected versions might change over time as fixes are backported to
older supported kernel versions.  The official CVE entry at
	https://cve.org/CVERecord/?id=CVE-2023-52647
will be updated if fixes are backported, please check that for the most
up to date information about this issue.

Affected files
==============

The file(s) affected by this issue are:
	drivers/media/platform/nxp/imx8-isi/imx8-isi-crossbar.c

Mitigation
==========

The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes.  Individual
changes are never tested alone, but rather are part of a larger kernel
release.  Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all.  If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
	https://git.kernel.org/stable/c/c95318607fbe8fdd44991a8dad2e44118e6b8812
	https://git.kernel.org/stable/c/c4bd29bf5b7f67925bc1abd16069f22dadf5f061
	https://git.kernel.org/stable/c/91c8ce42fcde09f1da24acab9013b3e19cb88a4e
	https://git.kernel.org/stable/c/eb2f932100288dbb881eadfed02e1459c6b9504c