perf/x86/intel/uncore: Fix die ID init and look up bugs (Linux Linux)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.12 % · percentile 2 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- Linux
- NVD status
- Modified
Description
In the Linux kernel, the following vulnerability has been resolved: perf/x86/intel/uncore: Fix die ID init and look up bugs In snbep_pci2phy_map_init(), in the nr_node_ids > 8 path, uncore_device_to_die() may return -1 when all CPUs associated with the UBOX device are offline. Remove the WARN_ON_ONCE(die_id == -1) check for two reasons: - The current code breaks out of the loop. This is incorrect because pci_get_device() does not guarantee iteration in domain or bus order, so additional UBOX devices may be skipped during the scan. - Returning -EINVAL is incorrect, since marking offline buses with die_id == -1 is expected and should not be treated as an error. Separately, when NUMA is disabled on a NUMA-capable platform, pcibus_to_node() returns NUMA_NO_NODE, causing uncore_device_to_die() to return -1 for all PCI devices. As a result, spr_update_device_location(), used on Intel SPR and EMR, ignores the corresponding PMON units and does not add them to the RB tree. Fix this by using uncore_pcibus_to_dieid(), which retrieves topology from the UBOX GIDNIDMAP register and works regardless of whether NUMA is enabled in Linux. This requires snbep_pci2phy_map_init() to be added in spr_uncore_pci_init(). Keep uncore_device_to_die() only for the nr_node_ids > 8 case, where NUMA is expected to be enabled.
Weaknesses (CWE)
- CWE-617 — Reachable Assertion
References
- https://git.kernel.org/stable/c/4eb511275e37c580156e787baab5232aeb0bfea0
- https://git.kernel.org/stable/c/184870af0e73f8ea2577c751fa098681465249f2
- https://git.kernel.org/stable/c/bdb35811ff41a1678620a407056b6372f350028a
- https://git.kernel.org/stable/c/c79ef3342632e71ac8612a2a1cc17ac84dd258b4
- https://git.kernel.org/stable/c/6a5dc3ee97581da2907fc7acd62853f07184de67
- https://git.kernel.org/stable/c/a16d1ec4dd0cdcf689f324adde6067083bce9099
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | MEDIUM 5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H | NVD · nvd@nist.gov (Primary) |
European references
- ENISA EUVD · EUVD-2026-28628
- GCVE · GCVE-0-2026-43344
CERT-FR advisories
- CERTFR-2026-AVI-1289 — Multiples vulnérabilités dans le noyau Linux de Debian LTS · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1253 — Multiples vulnérabilités dans le noyau Linux de Debian · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1064 — Multiples vulnérabilités dans le noyau Linux de SUSE · cert.ssi.gouv.fr
Affected configurations (NVD CPE)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*≥ 5.12 < 6.19.14cpe:2.3:o:linux:linux_kernel:7.0:rc1:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:7.0:rc2:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:7.0:rc3:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:7.0:rc4:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:7.0:rc5:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:7.0:rc6:*:*:*:*:*:*cpe:2.3:o:linux:linux_kernel:7.0:rc7:*:*:*:*:*:*
Affected products
| Product | Versions |
|---|---|
| Linux · Linux | affected 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 < 4eb511275e37c580156e787baab5232aeb0bfea0 ; affected 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 < 184870af0e73f8ea2577c751fa098681465249f2 ; affected 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 < bdb35811ff41a1678620a407056b6372f350028a ; affected 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 < c79ef3342632e71ac8612a2a1cc17ac84dd258b4 ; affected 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 < 6a5dc3ee97581da2907fc7acd62853f07184de67 ; affected 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 < a16d1ec4dd0cdcf689f324adde6067083bce9099 |
| Linux · Linux | affected 5.12 ; unaffected 0 < 5.12 ; unaffected 6.1.191 ≤ 6.1.* ; unaffected 6.6.157 ≤ 6.6.* ; unaffected 6.12.109 ≤ 6.12.* ; unaffected 6.18.50 ≤ 6.18.* |
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 |