[<prev] [day] [month] [year] [list]
Message-ID: <2026011455-CVE-2025-71140-a6fe@gregkh>
Date: Wed, 14 Jan 2026 16:08:04 +0100
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-cve-announce@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...nel.org>
Subject: CVE-2025-71140: media: mediatek: vcodec: Use spinlock for context list protection lock
From: Greg Kroah-Hartman <gregkh@...nel.org>
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
media: mediatek: vcodec: Use spinlock for context list protection lock
Previously a mutex was added to protect the encoder and decoder context
lists from unexpected changes originating from the SCP IP block, causing
the context pointer to go invalid, resulting in a NULL pointer
dereference in the IPI handler.
Turns out on the MT8173, the VPU IPI handler is called from hard IRQ
context. This causes a big warning from the scheduler. This was first
reported downstream on the ChromeOS kernels, but is also reproducible
on mainline using Fluster with the FFmpeg v4l2m2m decoders. Even though
the actual capture format is not supported, the affected code paths
are triggered.
Since this lock just protects the context list and operations on it are
very fast, it should be OK to switch to a spinlock.
The Linux kernel CVE team has assigned CVE-2025-71140 to this issue.
Affected and fixed versions
===========================
Issue introduced in 6.6.27 with commit 0a2dc707aa42214f9c4827bd57e344e29a0841d6 and fixed in 6.6.120 with commit 2c1ea6214827041f548279c9eda341eda0cc8351
Issue introduced in 6.9 with commit 6467cda18c9f9b5f2f9a0aa1e2861c653e41f382 and fixed in 6.12.64 with commit b92c19675f632a41af1222027a231bc2b7efa7ed
Issue introduced in 6.9 with commit 6467cda18c9f9b5f2f9a0aa1e2861c653e41f382 and fixed in 6.18.4 with commit 3e858938b0e659f6ec9ddcf853a87f1c5c3f44e1
Issue introduced in 6.9 with commit 6467cda18c9f9b5f2f9a0aa1e2861c653e41f382 and fixed in 6.19-rc1 with commit a5844227e0f030d2af2d85d4aed10c5eca6ca176
Issue introduced in 6.8.6 with commit 23aaf824121055ba81b55f75444355bd83c8eb38
Issue introduced in 6.6.27 with commit 41671f0c0182b2bae74ca7e3b0f155559e3e2fc5
Issue introduced in 6.8.6 with commit 51c84a8aac6e3b59af2b0e92ba63cabe2e641a2d
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-2025-71140
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/mediatek/vcodec/common/mtk_vcodec_fw_vpu.c
drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv.c
drivers/media/platform/mediatek/vcodec/decoder/mtk_vcodec_dec_drv.h
drivers/media/platform/mediatek/vcodec/decoder/vdec_vpu_if.c
drivers/media/platform/mediatek/vcodec/encoder/mtk_vcodec_enc_drv.c
drivers/media/platform/mediatek/vcodec/encoder/mtk_vcodec_enc_drv.h
drivers/media/platform/mediatek/vcodec/encoder/venc_vpu_if.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/2c1ea6214827041f548279c9eda341eda0cc8351
https://git.kernel.org/stable/c/b92c19675f632a41af1222027a231bc2b7efa7ed
https://git.kernel.org/stable/c/3e858938b0e659f6ec9ddcf853a87f1c5c3f44e1
https://git.kernel.org/stable/c/a5844227e0f030d2af2d85d4aed10c5eca6ca176
Powered by blists - more mailing lists