KernelScan.io

HIGH

iommu/amd CompletionWait Lockup

CVE-2026-43253

CVSS 7.5 / 10.0 NVD

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

KernelScan AI5.4MEDIUM

01

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.

02

Engine v0.2.0

Risk summary

Systems with AMD IOMMU hardware running with iommu.strict=1 can experience soft lockups under high I/O load. This affects system availability but does not compromise confidentiality or integrity.

Affecteddrivers/iommu/amd/iommu.c (AMD IOMMU)

Vulnerability analysis

The root cause is improper lock ordering in the AMD IOMMU completion wait path. The wait_on_sem() function performs a busy-wait loop while holding a spinlock with interrupts disabled, which can cause soft lockups under stress when iommu.strict=1 is enabled. The fix moves the completion wait outside the spinlock, reducing lock contention and preventing extended periods with interrupts disabled. This is a local availability issue requiring low privileges to trigger through I/O operations.

03

BranchFixed inPatch commit
6.126.12.75715c263119fd
6.186.18.16e15768e68820
6.196.19.6496269d12072
6.66.6.128f2f65b28d802
mainline7.0d2a0cac10597