CVE-2025-71140 (GCVE-0-2025-71140)
Vulnerability from cvelistv5
Published
2026-01-14 15:07
Modified
2026-02-09 08:35
Severity ?
VLAI Severity ?
EPSS score ?
Summary
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.
References
| URL | Tags | |
|---|---|---|
Impacted products
| Vendor | Product | Version | ||
|---|---|---|---|---|
| Linux | Linux |
Version: 0a2dc707aa42214f9c4827bd57e344e29a0841d6 Version: 6467cda18c9f9b5f2f9a0aa1e2861c653e41f382 Version: 6467cda18c9f9b5f2f9a0aa1e2861c653e41f382 Version: 6467cda18c9f9b5f2f9a0aa1e2861c653e41f382 Version: 23aaf824121055ba81b55f75444355bd83c8eb38 Version: 41671f0c0182b2bae74ca7e3b0f155559e3e2fc5 Version: 51c84a8aac6e3b59af2b0e92ba63cabe2e641a2d |
||
{
"containers": {
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"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"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "2c1ea6214827041f548279c9eda341eda0cc8351",
"status": "affected",
"version": "0a2dc707aa42214f9c4827bd57e344e29a0841d6",
"versionType": "git"
},
{
"lessThan": "b92c19675f632a41af1222027a231bc2b7efa7ed",
"status": "affected",
"version": "6467cda18c9f9b5f2f9a0aa1e2861c653e41f382",
"versionType": "git"
},
{
"lessThan": "3e858938b0e659f6ec9ddcf853a87f1c5c3f44e1",
"status": "affected",
"version": "6467cda18c9f9b5f2f9a0aa1e2861c653e41f382",
"versionType": "git"
},
{
"lessThan": "a5844227e0f030d2af2d85d4aed10c5eca6ca176",
"status": "affected",
"version": "6467cda18c9f9b5f2f9a0aa1e2861c653e41f382",
"versionType": "git"
},
{
"status": "affected",
"version": "23aaf824121055ba81b55f75444355bd83c8eb38",
"versionType": "git"
},
{
"status": "affected",
"version": "41671f0c0182b2bae74ca7e3b0f155559e3e2fc5",
"versionType": "git"
},
{
"status": "affected",
"version": "51c84a8aac6e3b59af2b0e92ba63cabe2e641a2d",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"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"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "6.9"
},
{
"lessThan": "6.9",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.120",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.64",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.4",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "6.19",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.120",
"versionStartIncluding": "6.6.27",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.64",
"versionStartIncluding": "6.9",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.4",
"versionStartIncluding": "6.9",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.19",
"versionStartIncluding": "6.9",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "6.8.6",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "6.6.27",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionStartIncluding": "6.8.6",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nmedia: mediatek: vcodec: Use spinlock for context list protection lock\n\nPreviously a mutex was added to protect the encoder and decoder context\nlists from unexpected changes originating from the SCP IP block, causing\nthe context pointer to go invalid, resulting in a NULL pointer\ndereference in the IPI handler.\n\nTurns out on the MT8173, the VPU IPI handler is called from hard IRQ\ncontext. This causes a big warning from the scheduler. This was first\nreported downstream on the ChromeOS kernels, but is also reproducible\non mainline using Fluster with the FFmpeg v4l2m2m decoders. Even though\nthe actual capture format is not supported, the affected code paths\nare triggered.\n\nSince this lock just protects the context list and operations on it are\nvery fast, it should be OK to switch to a spinlock."
}
],
"providerMetadata": {
"dateUpdated": "2026-02-09T08:35:37.584Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/2c1ea6214827041f548279c9eda341eda0cc8351"
},
{
"url": "https://git.kernel.org/stable/c/b92c19675f632a41af1222027a231bc2b7efa7ed"
},
{
"url": "https://git.kernel.org/stable/c/3e858938b0e659f6ec9ddcf853a87f1c5c3f44e1"
},
{
"url": "https://git.kernel.org/stable/c/a5844227e0f030d2af2d85d4aed10c5eca6ca176"
}
],
"title": "media: mediatek: vcodec: Use spinlock for context list protection lock",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2025-71140",
"datePublished": "2026-01-14T15:07:53.581Z",
"dateReserved": "2026-01-13T15:30:19.660Z",
"dateUpdated": "2026-02-09T08:35:37.584Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.
Loading…
Loading…