← Back to CVE Explorer

CVE-2026-90281

Full vulnerability record from the local CVENow database.

Description

In the Linux kernel, the following vulnerability has been resolved: phy: qcom: snps-femto-v2: Fix possible NULL-deref on early runtime suspend Runtime PM must be enabled before creating the PHY, since phy_create() only enables runtime PM on the PHY device if it is already enabled on this parent device. However, the runtime PM callbacks dereference the hsphy instance, which is not yet ready, leaving a window where a suspend callback may trigger a NULL pointer dereference. Take a runtime PM usage reference with pm_runtime_get_noresume() before enabling runtime PM and release it once the PHY has been created, so that no runtime suspend can run before the PHY is ready. This also prevents a short window where an unnecessary runtime suspend can occur. Use the devres-managed version to ensure PM runtime is symmetrically disabled during driver removal for proper cleanup.

Severity
Not scored
CVSS score
Not available
Vulnerability status
Received
Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Published
2026-09-17 17:17:24.810000
Last modified
2026-10-19 09:19:21.647000
View original CVE JSON
{
  "id": "CVE-2026-90281",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "published": "2026-09-17T17:17:24.810",
  "lastModified": "2026-10-19T09:19:21.647",
  "vulnStatus": "Received",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nphy: qcom: snps-femto-v2: Fix possible NULL-deref on early runtime suspend\n\nRuntime PM must be enabled before creating the PHY, since phy_create()\nonly enables runtime PM on the PHY device if it is already enabled on\nthis parent device. However, the runtime PM callbacks dereference the\nhsphy instance, which is not yet ready, leaving a window where a suspend\ncallback may trigger a NULL pointer dereference.\n\nTake a runtime PM usage reference with pm_runtime_get_noresume() before\nenabling runtime PM and release it once the PHY has been created, so that\nno runtime suspend can run before the PHY is ready. This also prevents a\nshort window where an unnecessary runtime suspend can occur.\n\nUse the devres-managed version to ensure PM runtime is symmetrically\ndisabled during driver removal for proper cleanup."
    }
  ],
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "programFiles": [
            "drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "0d75f508a9d56133a2834215959cde4605c804d1",
              "lessThan": "0c5c08c94dd64c05679970d4eed8b06d36a889a8",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "0d75f508a9d56133a2834215959cde4605c804d1",
              "lessThan": "1027b1d4e29756dfbf74ef8743456a1efa3679f0",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "0d75f508a9d56133a2834215959cde4605c804d1",
              "lessThan": "34293f5a8982a06c40af69c8c7c856b5837ac652",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "0d75f508a9d56133a2834215959cde4605c804d1",
              "lessThan": "3ddf41938fee3d148a170c31e76b0515a522ef7e",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "0d75f508a9d56133a2834215959cde4605c804d1",
              "lessThan": "82cb1aedf4bdb279cf8853fe8f39bec4e6cffa0a",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "0d75f508a9d56133a2834215959cde4605c804d1",
              "lessThan": "61749681e4a3629ec20b04ba2443b91016af3d2f",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "0d75f508a9d56133a2834215959cde4605c804d1",
              "lessThan": "b85bbec72fa813b60e093c6bb36ae232b9b0eb5e",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "0d75f508a9d56133a2834215959cde4605c804d1",
              "lessThan": "c271a6926ea7d3c9566b033d63fd4e8c488dc860",
              "versionType": "git",
              "status": "affected"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "programFiles": [
            "drivers/phy/qualcomm/phy-qcom-snps-femto-v2.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "5.9",
              "status": "affected"
            },
            {
              "version": "0",
              "lessThan": "5.9",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.10.270",
              "lessThanOrEqual": "5.10.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.15.221",
              "lessThanOrEqual": "5.15.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.1.188",
              "lessThanOrEqual": "6.1.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.6.157",
              "lessThanOrEqual": "6.6.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.12.110",
              "lessThanOrEqual": "6.12.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.18.52",
              "lessThanOrEqual": "6.18.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.2.6",
              "lessThanOrEqual": "7.2.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.3",
              "lessThanOrEqual": "*",
              "versionType": "original_commit_for_fix",
              "status": "unaffected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {},
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/0c5c08c94dd64c05679970d4eed8b06d36a889a8",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/1027b1d4e29756dfbf74ef8743456a1efa3679f0",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/34293f5a8982a06c40af69c8c7c856b5837ac652",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/3ddf41938fee3d148a170c31e76b0515a522ef7e",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/61749681e4a3629ec20b04ba2443b91016af3d2f",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/82cb1aedf4bdb279cf8853fe8f39bec4e6cffa0a",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/b85bbec72fa813b60e093c6bb36ae232b9b0eb5e",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/c271a6926ea7d3c9566b033d63fd4e8c488dc860",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ]
}