製品・ソフトウェアに関する情報
LinuxのLinux Kernelにおける到達可能なアサーションに関する脆弱性
Title LinuxのLinux Kernelにおける到達可能なアサーションに関する脆弱性
Summary

Linuxカーネルにおいて、以下の脆弱性が修正されました。perf/x86/intel/uncoreにおけるdie IDの初期化および検索のバグを修正しました。snbep_pci2phy_map_init()関数のnr_node_idsが8を超える経路において、すべてのCPUがオフラインである場合に、uncore_device_to_die()が-1を返すことがあります。WARN_ON_ONCE(die_id == -1)のチェックを削除した理由は2点あります。1点目は、現在のコードがループを途中で抜けてしまい、pci_get_device()がドメインやバスの順序での反復を保証しないため、スキャン中に追加のUBOXデバイスがスキップされる可能性があるからです。2点目は、-EINVALを返すのは誤りであり、die_id == -1でオフラインバスをマークすることは想定されており、エラーとして扱うべきではないからです。さらに、NUMAがNUMA対応プラットフォームで無効化されている場合において、pcibus_to_node()はNUMA_NO_NODEを返し、uncore_device_to_die()はすべてのPCIデバイスに対して-1を返します。その結果、Intel SPRおよびEMRで使用されるspr_update_device_location()は対応するPMONユニットを無視し、それらをRBツリーに追加しません。本問題は、UBOXのGIDNIDMAPレジスタからトポロジーを取得し、LinuxでNUMAが有効か無効かに関係なく動作するuncore_pcibus_to_dieid()を使用することで修正されました。これにより、snbep_pci2phy_map_init()をspr_uncore_pci_init()に追加する必要があります。uncore_device_to_die()は、NUMAが有効であることが期待されるnr_node_idsが8を超える場合のみに保持されます。

Possible impacts 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う情報について、書き換えは発生しません。 さらに、当該ソフトウェアが完全に停止する可能性があります。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
Solution

リリース情報、またはパッチ情報が公開されています。参考情報を参照して適切な対策を実施してください。

Publication Date May 8, 2026, midnight
Registration Date May 20, 2026, 1:28 p.m.
Last Update May 20, 2026, 1:28 p.m.
CVSS3.0 : 警告
Score 5.5
Vector CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Affected System
Linux
Linux Kernel 5.12 以上 6.19.14 未満
Linux Kernel 7.0
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
その他
Change Log
No Changed Details Date of change
1 [2026年05月20日]
  掲載
May 20, 2026, 1:28 p.m.

NVD Vulnerability Information
CVE-2026-43344
Summary

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.

Publication Date May 8, 2026, 11:16 p.m.
Registration Date May 9, 2026, 4:13 a.m.
Last Update May 12, 2026, 11:10 p.m.
Related information, measures and tools
Common Vulnerabilities List