CVE-2025-71140 (GCVE-0-2025-71140)
Vulnerability from cvelistv5
Published
2026-01-14 15:07
Modified
2026-02-09 08:35
Severity ?
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.
Impacted products
Vendor Product Version
Linux Linux Version: 0a2dc707aa42214f9c4827bd57e344e29a0841d6
Version: 6467cda18c9f9b5f2f9a0aa1e2861c653e41f382
Version: 6467cda18c9f9b5f2f9a0aa1e2861c653e41f382
Version: 6467cda18c9f9b5f2f9a0aa1e2861c653e41f382
Version: 23aaf824121055ba81b55f75444355bd83c8eb38
Version: 41671f0c0182b2bae74ca7e3b0f155559e3e2fc5
Version: 51c84a8aac6e3b59af2b0e92ba63cabe2e641a2d
Create a notification for this product.
Show details on NVD website


{
  "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"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

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…