CVE-2026-43253
High · 7.5CVSS
7.5
EPSS
0.3%
Published
May 6, 2026
CISA due date
—
Cloudanix analysis
Some AMD-based Linux systems can freeze or become unavailable under heavy workload until the operating system is updated.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Denial of service
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
This is a Linux kernel availability flaw in the AMD IOMMU driver. When AMD IOMMU strict mode is enabled with `iommu.strict=1`, the kernel can busy-wait for an IOMMU command completion while holding a spinlock with interrupts disabled. Under heavy I/O, DMA, virtualization, or device-mapping pressure, this can cause prolonged CPU stalls, watchdog soft lockups, degraded scheduling, or a system hang. The issue does not provide code execution, privilege escalation, or data disclosure; the primary impact is denial of service.
Why it matters to the business
Affected Linux systems using AMD IOMMU strict mode may become unstable or unavailable during high I/O or virtualization stress, potentially disrupting hosted workloads, storage, networking, or hypervisor operations. The vulnerability is not listed in CISA KEV, is not known to be used in ransomware campaigns, and has a low EPSS score, so broad opportunistic exploitation is not currently indicated; however, systems running latency-sensitive, high-throughput, or multi-tenant workloads may still face operational risk from crashes or lockups.
How an attack unfolds
An attacker or untrusted workload would need to create conditions that force frequent AMD IOMMU command completions while the system is running with strict IOMMU mode enabled. In practice, this could involve generating sustained device I/O, DMA mapping churn, virtual machine activity, containerized workload pressure, or network/storage traffic that indirectly drives IOMMU activity. The vulnerable kernel path waits for hardware completion while holding a spinlock and disabling interrupts, which can starve other kernel activity long enough for watchdogs to report soft lockups or for the host to become unresponsive. There is no indication of public exploit maturity or known exploitation in the wild, and exploitation is best understood as a reliability-triggering denial-of-service condition rather than a direct remote compromise primitive.
How to fix it
Upgrade to a Linux kernel version that includes the AMD IOMMU fix moving `wait_on_sem()` outside the spinlock in `iommu_completion_wait()`. Use the fixed kernel packages provided by the relevant Linux distribution or kernel vendor, because no specific upstream package versions were provided in the input. Where immediate patching is not possible, reduce exposure by avoiding untrusted high-I/O workloads on affected AMD IOMMU systems, limiting device passthrough or DMA-intensive workloads, monitoring for soft lockups, and evaluating whether strict IOMMU mode is operationally required. Do not disable IOMMU protections or strict mode without a risk assessment, because doing so may reduce DMA isolation and hardening.
How to confirm the fix worked
Confirm the running kernel has been updated to a vendor build containing the AMD IOMMU completion-wait fix. Validate that affected systems no longer run an unfixed kernel by checking the installed and booted kernel version with standard OS package and runtime tools. Review boot parameters for `iommu.strict=1` to understand whether the vulnerable execution path was likely reachable before remediation. After patching, perform controlled high-I/O, VM, storage, networking, or device-passthrough stress testing representative of production workloads and confirm that kernel logs no longer show AMD IOMMU-related watchdog stalls, soft lockups, RCU stalls, or host hangs.
Typical attack path
- Identify or reach a Linux system running an affected kernel on hardware using the AMD IOMMU driver.
- Confirm or assume that strict IOMMU mode is enabled, commonly via the `iommu.strict=1` kernel parameter or equivalent strict DMA-remapping behavior.
- Generate sustained I/O, DMA mapping, virtualization, or device passthrough activity that causes frequent AMD IOMMU command completion waits.
- Trigger contention in the vulnerable AMD IOMMU completion wait path while interrupts are disabled under a spinlock.
- Cause CPU stalls, kernel watchdog soft-lockup messages, workload disruption, or a full system hang requiring service restart or host reboot.
How to detect it
To determine whether this condition was already triggered, review kernel and system logs for watchdog lockups, RCU stalls, hung tasks, or AMD IOMMU messages around periods of heavy I/O, virtualization, storage, or network activity. Useful sources include `journalctl -k`, `/var/log/kern.log`, `/var/log/messages`, `/var/log/syslog`, hypervisor management logs, hardware management controller event logs, crash dumps, kdump/vmcore artifacts, and monitoring alerts for host unresponsiveness or unexpected reboots. Correlate events with boot parameters showing `iommu.strict=1`, AMD-Vi initialization, VM start/stop activity, device passthrough operations, storage bursts, or network throughput spikes. There are no known attacker-specific payload strings, files, registry keys, or network signatures for this vulnerability; detection is based on kernel availability artifacts and workload correlation.
- watchdog: BUG: soft lockup
- BUG: soft lockup - CPU
- NMI watchdog: Watchdog detected hard LOCKUP
- rcu: INFO: rcu_sched self-detected stall
- rcu: INFO: rcu_preempt self-detected stall
- INFO: task
- blocked for more than
- AMD-Vi
- amd_iommu
- iommu.strict=1
- iommu/amd
- iommu_completion_wait
- wait_on_sem
What your security team should do
- Inventory Linux systems running on AMD platforms with AMD IOMMU enabled, especially hypervisors, storage nodes, network appliances, and high-throughput workload hosts.
- Prioritize patching systems that use `iommu.strict=1`, device passthrough, virtualization, heavy DMA, or untrusted multi-tenant workloads.
- Track distribution kernel advisories and deploy the first vendor-supported kernel containing the AMD IOMMU fix.
- Because this is not KEV-listed, has no known ransomware use, and has low EPSS, prioritize based on operational criticality and exposure to untrusted workload-driven I/O rather than internet exposure alone.
- Review kernel logs from the pre-patch period for soft lockups, hard lockups, RCU stalls, or AMD-Vi/IOMMU errors that coincide with workload spikes.
- Where patching must be delayed, reduce untrusted high-I/O workload density and increase monitoring for host responsiveness and kernel watchdog events.
The record
In the Linux kernel, the following vulnerability has been resolved: iommu/amd: move wait_on_sem() out of spinlock With iommu.strict=1, the existing completion wait path can cause soft lockups under stressed environment, as wait_on_sem() busy-waits under the spinlock with interrupts disabled. Move the completion wait in iommu_completion_wait() out of the spinlock. wait_on_sem() only polls the hardware-updated cmd_sem and does not require iommu->lock, so holding the lock during the busy wait unnecessarily increases contention and extends the time with interrupts disabled.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|
Related vulnerabilities
- CVE-2026-61854 VoiceSentinel is a real-time voice moderation system for Minecraft servers. CWE-667
- CVE-2026-118593 A flaw was found in Red Hat Enterprise Linux 9 kernel builds. CWE-667
- CVE-2026-106174 A improper locking vulnerability in Fortinet FortiOS 8.0.0, FortiOS 7.6.4 through 7.6.6… CWE-667
- CVE-2026-110803 VaadinService.requestEnd() in Vaadin Framework 8 locks the session and then reads the… CWE-667
- CVE-2026-111879 DBI versions before 1.656 for Perl hang on a later open of a DBD::DBM table because a… CWE-667
- CVE-2026-107674 IBM i 7.3, 7.4, 7.5, and 7.6 is vulnerable to a denial of service to Digital Certificate… CWE-667
- CVE-2026-98123 In the Linux kernel, the following vulnerability has been resolved: sctp: fix soft lockup… CWE-667
- CVE-2026-98094 In the Linux kernel, the following vulnerability has been resolved: staging: fbtft: make… CWE-667