CVE-2026-43344

perf/x86/intel/uncore: Fix die ID init and look up bugs

State
Published
Severity
Not scored
Published
May 8, 2026
Updated
Oct 30, 2026
Reserved
May 1, 2026

Read the record on cve.org

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.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 to before 4eb511275e37c580156e787baab5232aeb0bfea0Affected
  • 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 to before 184870af0e73f8ea2577c751fa098681465249f2Affected
  • 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 to before bdb35811ff41a1678620a407056b6372f350028aAffected
  • 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 to before c79ef3342632e71ac8612a2a1cc17ac84dd258b4Affected
  • 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 to before 6a5dc3ee97581da2907fc7acd62853f07184de67Affected
  • 9a7832ce3d920426a36cdd78eda4b3568d4d09e3 to before a16d1ec4dd0cdcf689f324adde6067083bce9099Affected
LinuxLinux
  • 5.12Affected
  • before 5.12Not affected
  • 6.1.191 through 6.1.*Not affected
  • 6.6.157 through 6.6.*Not affected
  • 6.12.109 through 6.12.*Not affected
  • 6.18.50 through 6.18.*Not affected
  • 6.19.14 through 6.19.*Not affected
  • 7.0 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.