All vulnerabilities
CVE-2026-98003

Linux: iommu/amd: Do not reallocate GA log buffers on resume

Linux LinuxOperating systems
CVSS
NoneNot scored
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.17%Chance of exploitation activity in the next 30 days, higher than 5% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in8b95269d7a43b737c2c0e2fa77bf00cc8a3a4434Also 94458b80d3b203c1c9e2c98aa7319b7713e006c0, 00a7dd64888d6dd72110b40e2824a088cf7b7386CVE List
Published25 Sep 2026Updated 21 Oct 2026CVE List

What fixes it

  • 8b95269d7a43b737c2c0e2fa77bf00cc8a3a4434LinuxCVE List
  • 94458b80d3b203c1c9e2c98aa7319b7713e006c0LinuxCVE List
  • 00a7dd64888d6dd72110b40e2824a088cf7b7386LinuxCVE List

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

In the Linux kernel, the following vulnerability has been resolved:

iommu/amd: Do not reallocate GA log buffers on resume

Commit c5e1a1eb9279 ("iommu/amd: Simplify and Consolidate Virtual APIC (AVIC) Enablement") moved the GA log allocation from iommu_init_pci() to enable_iommus_vapic(), which is called on every resume.

iommu_init_ga_log() assigns iommu->ga_log and iommu->ga_log_tail unconditionally. Each resume therefore replaces the boot-time pointers and leaks both old allocations. The function also uses GFP_KERNEL from a syscore resume callback, where interrupts are disabled and the non-boot CPUs are offline.

Return early if both buffers are already allocated. Clear the pointers in free_ga_log() so a partial allocation failure cannot leave ga_log dangling.

Text from CVE List

Affected versions 12

  • Linuxaffected: c5e1a1eb9279fdb28d47ca2a4493a4c53b7d6a0b before 8b95269d7a43b737c2c0e2fa77bf00cc8a3a4434CVE List
  • Linuxaffected: c5e1a1eb9279fdb28d47ca2a4493a4c53b7d6a0b before ff85cdc2889e1c885eed218ee5bc0b59e0235b3fCVE List
  • Linuxaffected: c5e1a1eb9279fdb28d47ca2a4493a4c53b7d6a0b before 94458b80d3b203c1c9e2c98aa7319b7713e006c0CVE List
  • Linuxaffected: c5e1a1eb9279fdb28d47ca2a4493a4c53b7d6a0b before b6be275d19cee01f8f1f08a2ff18337103d05d40CVE List
  • Linuxaffected: c5e1a1eb9279fdb28d47ca2a4493a4c53b7d6a0b before 00a7dd64888d6dd72110b40e2824a088cf7b7386CVE List
  • Linuxaffected: 6.0CVE List
  • Linuxunaffected: all versions before 6.0CVE List
  • Linuxunaffected: 6.6.160 through 6.6.*CVE List
  • Linuxunaffected: 6.12.114 through 6.12.*CVE List
  • Linuxunaffected: 6.18.53 through 6.18.*CVE List
  • Linuxunaffected: 7.2.7 through 7.2.*CVE List
  • Linuxunaffected: 7.3CVE List

References 5