phy: qcom: snps-femto-v2: Fix possible NULL-deref on early runtime suspend
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 sourcePublished 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"
}