CVE-2025-71140
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.
Leer descripción completaMostrar menos
Since this lock just protects the context list and operations on it are very fast, it should be OK to switch to a spinlock.
CVSS
NVD no ha asignado puntuación CVSS a esta CVE (habitual desde el cambio de política de abril de 2026).
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.18%
- Percentil entre todas las CVEs puntuadas: 7
- Fecha de la puntuación: 6/10/2026
EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).
Tecnologías afectadas (1)
⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.
Referencias
JSON original (NVD)
Mostrar
{
"id": "CVE-2025-71140",
"cveTags": [],
"metrics": {},
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "0a2dc707aa42214f9c4827bd57e344e29a0841d6",
"lessThan": "2c1ea6214827041f548279c9eda341eda0cc8351",
"versionType": "git"
},
{
"status": "affected",
"version": "6467cda18c9f9b5f2f9a0aa1e2861c653e41f382",
"lessThan": "b92c19675f632a41af1222027a231bc2b7efa7ed",
"versionType": "git"
},
{
"status": "affected",
"version": "6467cda18c9f9b5f2f9a0aa1e2861c653e41f382",
"lessThan": "3e858938b0e659f6ec9ddcf853a87f1c5c3f44e1",
"versionType": "git"
},
{
"status": "affected",
"version": "6467cda18c9f9b5f2f9a0aa1e2861c653e41f382",
"lessThan": "a5844227e0f030d2af2d85d4aed10c5eca6ca176",
"versionType": "git"
},
{
"status": "affected",
"version": "23aaf824121055ba81b55f75444355bd83c8eb38",
"versionType": "git"
},
{
"status": "affected",
"version": "41671f0c0182b2bae74ca7e3b0f155559e3e2fc5",
"versionType": "git"
},
{
"status": "affected",
"version": "51c84a8aac6e3b59af2b0e92ba63cabe2e641a2d",
"versionType": "git"
},
{
"status": "affected",
"version": "6.6.27",
"lessThan": "6.6.120",
"versionType": "semver"
},
{
"status": "affected",
"version": "6.8.6",
"lessThan": "6.9",
"versionType": "semver"
}
],
"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"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "6.9"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "6.9",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "6.6.120",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.12.64",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.18.4",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
},
{
"status": "unaffected",
"version": "6.19",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"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"
],
"defaultStatus": "affected"
}
]
}
],
"published": "2026-01-14T15:16:03.793",
"references": [
{
"url": "https://git.kernel.org/stable/c/2c1ea6214827041f548279c9eda341eda0cc8351",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/3e858938b0e659f6ec9ddcf853a87f1c5c3f44e1",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/a5844227e0f030d2af2d85d4aed10c5eca6ca176",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/b92c19675f632a41af1222027a231bc2b7efa7ed",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
],
"vulnStatus": "Deferred",
"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."
},
{
"lang": "es",
"value": "En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\n\nmedia: mediatek: vcodec: Usar spinlock para el bloqueo de protección de la lista de contextos\n\nAnteriormente se añadió un mutex para proteger las listas de contextos del codificador y decodificador de cambios inesperados originados por el bloque IP SCP, haciendo que el puntero de contexto se volviera inválido, resultando en una desreferencia de puntero NULL en el manejador IPI.\n\nResulta que en el MT8173, el manejador IPI de la VPU es llamado desde el contexto de IRQ duro. Esto causa una gran advertencia del planificador. Esto fue reportado por primera vez en versiones derivadas en los kernels de ChromeOS, pero también es reproducible en la rama principal usando Fluster con los decodificadores FFmpeg v4l2m2m. Aunque el formato de captura real no es compatible, las rutas de código afectadas se activan.\n\nDado que este bloqueo solo protege la lista de contextos y las operaciones sobre ella son muy rápidas, debería estar bien cambiar a un spinlock."
}
],
"lastModified": "2026-06-17T10:03:44.723",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}