All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-cve-announce@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@kernel.org>
Subject: CVE-2026-89887: media: i2c: ov7740: fix use-after-destroy in remove
Date: Wed, 16 Sep 2026 11:30:17 +0100	[thread overview]
Message-ID: <2026091634-CVE-2026-89887-e243@gregkh> (raw)

From: Greg Kroah-Hartman <gregkh@kernel.org>

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

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

media: i2c: ov7740: fix use-after-destroy in remove

The ov7740_remove() function had a severe teardown order bug where it
destroyed the driver's mutex before freeing the V4L2 control handler
which relies on that mutex, leading to a use-after-destroy kernel panic.
Furthermore, the driver explicitly called v4l2_ctrl_handler_free() and
mutex_destroy() sequentially, but then called ov7740_free_controls()
which invokes both of them a second time, resulting in a double-free.

This patch fixes the issue by unregistering the subdevice first, and
relying exclusively on ov7740_free_controls() to safely tear down the
mutex and control handler in the correct order.

The Linux kernel CVE team has assigned CVE-2026-89887 to this issue.


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

	Issue introduced in 4.16 with commit 39c5c4471b8d793daf868bd004e56ed420e89707 and fixed in 5.10.270 with commit 9e4693436c7dcf8584002500ce4b434b79bbf9ed
	Issue introduced in 4.16 with commit 39c5c4471b8d793daf868bd004e56ed420e89707 and fixed in 5.15.221 with commit 81e9765878d3ac8ad18e3a683332b5d6bc3a0e33
	Issue introduced in 4.16 with commit 39c5c4471b8d793daf868bd004e56ed420e89707 and fixed in 6.1.188 with commit 8a02ee6c1c4e88f3a0442bd60d3c77db9a30db5e
	Issue introduced in 4.16 with commit 39c5c4471b8d793daf868bd004e56ed420e89707 and fixed in 6.6.157 with commit 7512838a19af0a284a58435292243fad21e57ff1
	Issue introduced in 4.16 with commit 39c5c4471b8d793daf868bd004e56ed420e89707 and fixed in 6.12.110 with commit 25e2505866c577db2661e4d431f0907c6ec9a3b4
	Issue introduced in 4.16 with commit 39c5c4471b8d793daf868bd004e56ed420e89707 and fixed in 6.18.51 with commit af81f35e4f429e769b784754e1aa4d7a922470ac
	Issue introduced in 4.16 with commit 39c5c4471b8d793daf868bd004e56ed420e89707 and fixed in 7.2.5 with commit 09453b467990e8ef8fe09f45a685f9a625248d33
	Issue introduced in 4.16 with commit 39c5c4471b8d793daf868bd004e56ed420e89707 and fixed in 7.3-rc1 with commit 5d1b3dea5a44124bab6c14a2d71b977dabed54e7

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-2026-89887
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/i2c/ov7740.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/9e4693436c7dcf8584002500ce4b434b79bbf9ed
	https://git.kernel.org/stable/c/81e9765878d3ac8ad18e3a683332b5d6bc3a0e33
	https://git.kernel.org/stable/c/8a02ee6c1c4e88f3a0442bd60d3c77db9a30db5e
	https://git.kernel.org/stable/c/7512838a19af0a284a58435292243fad21e57ff1
	https://git.kernel.org/stable/c/25e2505866c577db2661e4d431f0907c6ec9a3b4
	https://git.kernel.org/stable/c/af81f35e4f429e769b784754e1aa4d7a922470ac
	https://git.kernel.org/stable/c/09453b467990e8ef8fe09f45a685f9a625248d33
	https://git.kernel.org/stable/c/5d1b3dea5a44124bab6c14a2d71b977dabed54e7

                 reply	other threads:[~2026-09-16 10:39 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=2026091634-CVE-2026-89887-e243@gregkh \
    --to=gregkh@linuxfoundation.org \
    --cc=cve@kernel.org \
    --cc=gregkh@kernel.org \
    --cc=linux-cve-announce@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.