Skip to content
Heist/ feed
Back to feed
UnratedFix available

phy: qcom: snps-femto-v2: Fix possible NULL-deref on early runtime suspend

Type: advisorySources: OSV

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.

Products
Kernel
Affected versions
Not specified
Fixed versions
5.10.270, 5.15.221, 6.1.188, 6.12.110, 6.18.52, 6.6.157, 7.2.6
CVEs
CVE-2026-90281
Confirmed fixed CVEs
Not specified
Updated in this feed
4 Nov 2026, 19:54 UTC · Revision 1

Source evidence

phy: qcom: snps-femto-v2: Fix possible NULL-deref on early runtime suspend

core-osv · Original source

Published 17 Sept 2026, 16:08 UTC

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.

osv:CVE-2026-90281

Kernel

Fixed versions: 5.10.270, 5.15.221, 6.1.188, 6.6.157, 6.12.110, 6.18.52, 7.2.6

Complete source record
{
  "id": "199afff21a1ad1dc243637bbb7167c9a55df4315618d0f3c4554ccc301a7f49a",
  "url": "https://osv.dev/vulnerability/CVE-2026-90281",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "phy: qcom: snps-femto-v2: Fix possible NULL-deref on early runtime suspend",
    "summary": "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.",
    "evidence": "osv:CVE-2026-90281",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "5.10.270",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "5.15.221",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.1.188",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.6.157",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.12.110",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.18.52",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "7.2.6",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "unknown",
    "structured": {
      "id": "CVE-2026-90281",
      "aliases": [
        "CVE-2026-90281"
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0d75f508a9d56133a2834215959cde4605c804d1"
                },
                {
                  "fixed": "0c5c08c94dd64c05679970d4eed8b06d36a889a8"
                },
                {
                  "fixed": "1027b1d4e29756dfbf74ef8743456a1efa3679f0"
                },
                {
                  "fixed": "34293f5a8982a06c40af69c8c7c856b5837ac652"
                },
                {
                  "fixed": "3ddf41938fee3d148a170c31e76b0515a522ef7e"
                },
                {
                  "fixed": "82cb1aedf4bdb279cf8853fe8f39bec4e6cffa0a"
                },
                {
                  "fixed": "61749681e4a3629ec20b04ba2443b91016af3d2f"
                },
                {
                  "fixed": "b85bbec72fa813b60e093c6bb36ae232b9b0eb5e"
                },
                {
                  "fixed": "c271a6926ea7d3c9566b033d63fd4e8c488dc860"
                }
              ]
            }
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-90281.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.9.0"
                },
                {
                  "fixed": "5.10.270"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.11.0"
                },
                {
                  "fixed": "5.15.221"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "5.16.0"
                },
                {
                  "fixed": "6.1.188"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.2.0"
                },
                {
                  "fixed": "6.6.157"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.7.0"
                },
                {
                  "fixed": "6.12.110"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.13.0"
                },
                {
                  "fixed": "6.18.52"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.19.0"
                },
                {
                  "fixed": "7.2.6"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-90281.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:38.920452939Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/0c5c08c94dd64c05679970d4eed8b06d36a889a8",
        "https://git.kernel.org/stable/c/1027b1d4e29756dfbf74ef8743456a1efa3679f0",
        "https://git.kernel.org/stable/c/34293f5a8982a06c40af69c8c7c856b5837ac652",
        "https://git.kernel.org/stable/c/3ddf41938fee3d148a170c31e76b0515a522ef7e",
        "https://git.kernel.org/stable/c/61749681e4a3629ec20b04ba2443b91016af3d2f",
        "https://git.kernel.org/stable/c/82cb1aedf4bdb279cf8853fe8f39bec4e6cffa0a",
        "https://git.kernel.org/stable/c/b85bbec72fa813b60e093c6bb36ae232b9b0eb5e",
        "https://git.kernel.org/stable/c/c271a6926ea7d3c9566b033d63fd4e8c488dc860",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/90xxx/CVE-2026-90281.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-90281",
        "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
      ],
      "provider_metadata": {
        "cna_assigner": "Linux",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/90xxx/CVE-2026-90281.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-90281",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": null
  },
  "source_id": "core-osv",
  "document_id": 506395,
  "published_at": "2026-09-17T16:08:11.916+00:00"
}