PCI: of_property: Omit bus properties without a subordinate bus (Linux Linux)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.21 % · percentile 11 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- Linux
- NVD status
- Received
Description
In the Linux kernel, the following vulnerability has been resolved: PCI: of_property: Omit bus properties without a subordinate bus A bridge (a device with a Type 1 header) may not have a secondary bus allocated (pdev->subordinate), e.g., if there are no available bus numbers or the bridge secondary/subordinate bus numbers are not writable. The dynamic OF helpers of_pci_prop_bus_range() and of_pci_prop_intr_map() dereference pdev->subordinate without checking it. When CONFIG_PCI_DYNAMIC_OF_NODES is enabled, this can cause a NULL pointer dereference and early boot hang. Generate 'bus-range' and 'interrupt-map' properties only when a subordinate bus exists. Keep the node and its remaining properties for bridges without one. The problem was latent since 407d1a51921e ("PCI: Create device tree node for bridge"), but wasn't reachable until 1f340724419e ("PCI: of: Create device tree PCI host bridge node"), which appeared in v6.15. Before 1f340724419e, of_pci_make_dev_node() returned early because the parent OF node was missing. [bhelgaas: move pdev->subordinate test to callees, commit log]
References
- https://git.kernel.org/stable/c/ccd32fa3489cbe86a0b281da4447b4c7eadb3518
- https://git.kernel.org/stable/c/a6d97d10e49ae49026ae13af6c41634fce470a37
- https://git.kernel.org/stable/c/879c911f77b8a7862aa16079b04efc3fdc5d32ec
- https://git.kernel.org/stable/c/aee774588abd78f75952fd34c3fa461bc46b62c2
- https://git.kernel.org/stable/c/8805840aad73df7146778be243a196d48b4f6430
European references
- ENISA EUVD · EUVD-2026-103744
- GCVE · GCVE-0-2026-98504
CERT-FR advisories
- CERTFR-2026-AVI-1375 — Multiples vulnérabilités dans le noyau Linux de Debian LTS · cert.ssi.gouv.fr
Affected products
| Product | Versions |
|---|---|
| Linux · Linux | affected 407d1a51921e9f28c1bcec647c2205925bd1fdab < ccd32fa3489cbe86a0b281da4447b4c7eadb3518 ; affected 407d1a51921e9f28c1bcec647c2205925bd1fdab < a6d97d10e49ae49026ae13af6c41634fce470a37 ; affected 407d1a51921e9f28c1bcec647c2205925bd1fdab < 879c911f77b8a7862aa16079b04efc3fdc5d32ec ; affected 407d1a51921e9f28c1bcec647c2205925bd1fdab < aee774588abd78f75952fd34c3fa461bc46b62c2 ; affected 407d1a51921e9f28c1bcec647c2205925bd1fdab < 8805840aad73df7146778be243a196d48b4f6430 |
| Linux · Linux | affected 6.6 ; unaffected 0 < 6.6 ; unaffected 6.6.158 ≤ 6.6.* ; unaffected 6.12.112 ≤ 6.12.* ; unaffected 6.18.55 ≤ 6.18.* ; unaffected 7.2.9 ≤ 7.2.* |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |