{
  "affected": [
    {
      "ranges": [
        {
          "events": [
            {
              "introduced": "6b46ca260e2290e3453d1355ab5b6d283d73d780"
            },
            {
              "fixed": "d90df5ce6deb2424de3ad89bcc693ac1b67accc9"
            },
            {
              "fixed": "e201c57073e624dd2ba5beaf9eda31e19b77b332"
            },
            {
              "fixed": "b89769f936a8fa9e66de72ddc1b71a9745a488e6"
            }
          ],
          "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.33"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.19.0"
            },
            {
              "fixed": "7.0.10"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "database_specific": {
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/52xxx/CVE-2026-52979.json"
  },
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: psp: check for device unregister when creating assoc\n\npsp_assoc_device_get_locked() obtains a psp_dev reference via\npsp_dev_get_for_sock() (which uses psp_dev_tryget() under RCU);\nit then acquires psd-\u003elock and drops the reference. Before\nthe lock is taken, psp_dev_unregister() can run to completion:\ntake psd-\u003elock, clear out state, unlock, drop the registration\nreference.\n\nThe expectation is that the lock prevents device unregistration,\nbut much like with netdevs special care has to be taken when\n\"upgrading\" a reference to a locked device. Add the missing\ncheck if device is still alive. psp_dev_is_registered() exists\nalready but had no callers, which makes me wonder if I either\nforgot to add this or lost the check during refactoring...",
  "id": "CVE-2026-52979",
  "modified": "2026-07-12T03:55:09.067509691Z",
  "published": "2026-06-24T16:28:55.696Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/b89769f936a8fa9e66de72ddc1b71a9745a488e6"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/d90df5ce6deb2424de3ad89bcc693ac1b67accc9"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/e201c57073e624dd2ba5beaf9eda31e19b77b332"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/52xxx/CVE-2026-52979.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-52979"
    },
    {
      "type": "PACKAGE",
      "url": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
    }
  ],
  "schema_version": "1.7.5",
  "summary": "net: psp: check for device unregister when creating assoc"
}