Get a Demo

Let's Patch It!

Book a short call with one our specialists, we'll walk you through how Endor Patches work, and ask you a few questions about your environment (like your primary programming languages and repository management). We'll also send you an email right after you fill out the form, feel free to reply with any questions you have in advance!

CVE

CVE-2026-74439

iommu/vt-d: Clear Present bit before tearing down scalable-mode context entry
Back to all
CVE

CVE-2026-74439

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

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

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

devicepasidtable_teardown() zeroes the 128-bit scalable-mode context

entry with contextclearentry() while the Present bit is still set. This

creates a window where the hardware can fetch a torn entry, with some

fields already zeroed while Present is still set, leading to unpredictable

behavior or spurious faults. The context-cache invalidation is issued only

after the entry has been zeroed, and intelpasidfree_table() then frees

the PASID directory pages, so the IOMMU can keep walking a stale Present=1

entry that points at freed memory.

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

64-bit writes to the entry, and the hardware fetch is not guaranteed to be

atomic with respect to multiple CPU writes.

Commit c1e4f1dccbe9d ("iommu/vt-d: Clear Present bit before tearing down

context entry") fixed this exact pattern in domaincontextclear_one() and

the copied-context path, but devicepasidtable_teardown() was not

converted.

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

spec, Section 6.5.3.3, using the same ownership handshake as the sibling

fix: clear only the Present bit, flush it to the IOMMU, perform the

context-cache invalidation, and only then zero the rest of the entry.

Package Versions Affected

Package Version
patch Availability
No items found.

Automatically patch vulnerabilities without upgrading

Fix Without Upgrading
Detect compatible fix
Apply safe remediation
Fix with a single pull request

CVSS Version

Severity
Base Score
CVSS Version
Score Vector
C
H
U
9.3
-
3.1
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
C
H
U
0
-
3.1
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
C
H
U
-

Related Resources

No items found.

References

https://git.kernel.org/stable/c/588718101e8449605f1c7e858fecb7cfa701cdab, https://git.kernel.org/stable/c/7fd4077dc92b91b1b844333c0a06bb9e286db10a, https://git.kernel.org/stable/c/e9e83bcfe37dc719182500dd823c03ab57d934f0, https://git.kernel.org/stable/c/f46452c3df7a8d8a5addc0926e76ef19ea7da0a0, https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/74xxx/CVE-2026-74439.json, https://nvd.nist.gov/vuln/detail/CVE-2026-74439, https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Severity

9.3

CVSS Score
0
10

Basic Information

Base CVSS
9.3
EPSS Probability
0.00134%
EPSS Percentile
0.03118%
Introduced Version
81e921fd321614c2ad8ac333b041aae1da7a1c6d,0,6.8.2,6.9.0,6.13.0,6.19.0
Fix Available
f46452c3df7a8d8a5addc0926e76ef19ea7da0a0,6.9,6.12.97,6.18.40,7.1.5,6.12.100-1

Fix Critical Vulnerabilities Instantly

Secure your app without upgrading.
Fix Without Upgrading