Executive brief
A vulnerability in the Linux kernel's AMD IOMMU driver can cause system instability or a complete freeze (soft lockup) under heavy workloads. The IOMMU is a critical component that manages how hardware devices interact with system memory. If exploited or triggered by high system stress, this could lead to a denial-of-service, impacting the availability of the affected server or workstation.
Technical details
A vulnerability classified as Improper Locking (CWE-667) exists in the AMD IOMMU driver (drivers/iommu/amd/iommu.c) of the Linux kernel. When the system is configured with iommu.strict=1, the function wait_on_sem() busy-waits while holding a spinlock with interrupts disabled. Under high-stress environments, this behavior leads to soft lockups because the CPU remains trapped in a polling loop without releasing the lock or allowing interrupt processing. The fix involves moving the wait_on_sem() call outside of the raw_spin_lock_irqsave protected section, as the semaphore polling does not strictly require the iommu->lock. This issue can be triggered remotely in network-stressed environments, resulting in a denial-of-service (DoS).
Affected products
- Linux Linux Kernel 4.9 to 6.6.128, 6.7 to 6.12.75, 6.13 to 6.18.16, 6.19 to 6.19.6
Timeline
- 2026-01-10: patched: Initial patch committed to mainline kernel.
- 2026-05-06: disclosed: CVE published.
References
- https://git.kernel.org/stable/c/496269d12072ecb219826485bdbec70c92a8eef5
- https://git.kernel.org/stable/c/715c263119fd1b918a9fcbd8a36ea5b604a46324
- https://git.kernel.org/stable/c/d2a0cac10597068567d336e85fa3cbdbe8ca62bf
- https://git.kernel.org/stable/c/e15768e68820142077bbca402d8e902f64ade1b0
- https://git.kernel.org/stable/c/f2f65b28d802a667119147444ec2ae33eebf9a58