CVE-2025-39961
BaseFortify
Publication date: 2025-10-09
Last updated on: 2026-02-26
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linux | linux_kernel | 5.3 |
| linux | linux_kernel | 6.17 |
| linux | linux_kernel | From 5.15.160 (inc) to 5.16 (inc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-362 | The product contains a concurrent code sequence that requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence operating concurrently. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability involves a race condition in the AMD IOMMU host page table implementation in the Linux kernel. The driver supports dynamic page table levels that can increase from 3 up to 6 levels based on address space needs. During the unmap operation, a function fetch_pte() reads page table root and mode values without proper locking. In rare cases, when the page table level is being increased concurrently, fetch_pte() may read inconsistent values (new root but old mode), causing it to fail to find the correct page table entry. This leads to unmap operations failing and potential warnings or retries in upper layers. The fix involves using a sequence counter (seqcount) to allow lock-free but consistent reads during these operations.
How can this vulnerability impact me? :
This vulnerability can cause failures in unmapping IOMMU page tables, which may lead to failed unmap operations and repeated retries or warnings in the system. While it does not directly cause data corruption or security breaches, it can affect system stability and performance, especially in workloads relying heavily on AMD IOMMU for device memory management.
What immediate steps should I take to mitigate this vulnerability?
Apply the Linux kernel update that includes the fix for the AMD IOMMU host page table race condition. The fix involves implementing seqcount to enable lock-free read operations on the read path, preventing the race condition during page table level updates.