CVE-2026-45944CWE-362

CVE-2026-45944

High · published May 27, 2026

CVSS v3.1
7.5
EPSS
0%
Percentile
0.7
In the wild
Unconfirmed
What it is

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

iommu/vt-d: Clear Present bit before tearing down context entry

When tearing down a context entry, the current implementation zeros the

entire 128-bit entry using multiple 64-bit writes. This creates a window

where the hardware can fetch a "torn" entry — where some fields are

already zeroed while the 'Present' bit is still set — leading to

unpredictable behavior or spurious faults.

While x86 provides strong write ordering, the compiler may reorder writes

to the two 64-bit halves of the context entry. Even without compiler

reordering, the hardware fetch is not guaranteed to be atomic with

respect to multiple CPU writes.

Align with the "Guidance to Software for Invalidations" in the VT-d spec

(Section 6.5.3.3) by implementing the recommended ownership handshake:

1. Clear only the 'Present' (P) bit of the context entry first to

signal the transition of ownership from hardware to software.

2. Use dma_wmb() to ensure the cleared bit is visible to the IOMMU.

3. Perform the required cache and context-cache invalidation to ensure

hardware no longer has cached references to the entry.

4. Fully zero out the entry only after the invalidation is complete.

Also, add a dma_wmb() to context_set_present() to ensure the entry

is fully initialized before the 'Present' bit becomes visible.

The record
Technical detail
CVSS v3.1
7.5 · HIGH
Vector
CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00098 · 0.7th percentile
Weakness
CWE-362 · Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
Published
2026-05-27T18:17Z
Affected products (2)
ProductVersionsFixed in
linux/linux_kernel≥ 2.6.24, < 6.18.146.18.14
linux/linux_kernel≥ 6.19, < 6.19.46.19.4
References (5)
EPSS history
Timeline
  • 27 MAY 12:18Z
    iommu/vt-d: Clear Present bit before tearing down context entry
    cvelistv5