{
  "affected": [
    {
      "ranges": [
        {
          "events": [
            {
              "introduced": "1d57628ff95b32d5cfa8d8f50e07690c161e9cf0"
            },
            {
              "fixed": "1894fc7a3bab90143dcd26ef8ee27040ef4a7501"
            },
            {
              "fixed": "f39a3e9cc5946473e16d6f5071b2ee0216c56d06"
            },
            {
              "fixed": "c2e894eac398b258f12fdec73ed6ba081047f7b3"
            }
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "type": "GIT"
        }
      ]
    },
    {
      "package": {
        "ecosystem": "Linux",
        "name": "Kernel"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "6.18.0"
            },
            {
              "fixed": "6.18.50"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.19.0"
            },
            {
              "fixed": "7.2.4"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "database_specific": {
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80955.json"
  },
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\ndm-pcache: fix use-after-free and invalid seg operations in kset_replay()\n\nIn kset_replay, when key-\u003eseg_gen is stale (key-\u003eseg_gen \u003c\nkey-\u003ecache_pos.cache_seg-\u003egen), cache_key_put(key) is called but then\nkey-\u003ecache_pos.cache_seg is accessed as the argument to cache_seg_get().\nThis is a use-after-free on the freed key memory. Although mempool\nrecycled memory is not immediately reclaimed or overwritten in practice,\nthis is still a potential UAF bug.\n\nAdditionally, for expired invalid keys, setting the cache-\u003eseg_map bit\nand calling cache_seg_get() is unreasonable since the corresponding\nsegment data is no longer valid.\n\nFix both issues by moving cache_seg_get() and __set_bit() after the\ngen check, so they only execute for valid keys, and using continue to\nskip invalid keys.",
  "id": "CVE-2026-80955",
  "modified": "2026-09-15T03:30:36.857246263Z",
  "published": "2026-09-11T19:42:23.838Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/1894fc7a3bab90143dcd26ef8ee27040ef4a7501"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/c2e894eac398b258f12fdec73ed6ba081047f7b3"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/f39a3e9cc5946473e16d6f5071b2ee0216c56d06"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80955.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-80955"
    },
    {
      "type": "PACKAGE",
      "url": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
    }
  ],
  "schema_version": "1.9.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ],
  "summary": "dm-pcache: fix use-after-free and invalid seg operations in kset_replay()"
}