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

mm: migrate_device: fix pte_pfn/pte_dirty called on non-present PTE

pte_pfn() and pte_dirty() have undefined behaviour when called on a
non-present PTE. In migrate_vma_collect_pmd(), these functions may be
invoked on non-present entries (e.g., device-private entries), leading
to potential crashes from pte_pfn() or incorrect dirty folio accounting
from pte_dirty(). Fix both by guarding with pte_present() checks.
Published: 2026-08-28
Score: n/a
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability stems from calling the page table lookup functions pte_pfn() and pte_dirty() on non‑present page table entries. When these functions are invoked on such entries, as can happen during device‑private migration, the undefined behaviour can lead to a kernel panic or incorrect dirty folio accounting. The primary impact is a denial of service through a system crash, potentially affecting all users of the affected machine.

Affected Systems

Linux kernel implementations. No specific affected version information was disclosed; the flaw exists in any kernel build that includes the migrate_vma_collect_pmd() path and does not guard calls to pte_pfn() and pte_dirty() with a pte_present() check.

Risk and Exploitability

The CVSS score and EPSS are not available, and the vulnerability is not listed in the CISA KEV catalog. Therefore, the likelihood of exploitation is uncertain. However, because the flaw requires execution of kernel code that can trigger the undefined behaviour, it is reasonably likely that a local attacker or a malicious device driver could provoke a crash. No remote exploit vector is documented, and the problem is expected to be effectively mitigated by applying the upstream kernel patch that adds the missing guard checks.

Generated by OpenCVE AI on August 28, 2026 at 09:47 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the latest upstream Linux kernel that includes the pte_present guard in migrate_vma_collect_pmd()
  • If a patch cannot be applied immediately, disable or remove untrusted device drivers that perform memory migration to prevent the faulting path from being exercised
  • Enable kernel runtime debugging and monitor for crashes or pte_dirty anomalies to detect potential exploitation attempts

Generated by OpenCVE AI on August 28, 2026 at 09:47 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 28 Aug 2026 10:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-476
CWE-665

Fri, 28 Aug 2026 07:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: mm: migrate_device: fix pte_pfn/pte_dirty called on non-present PTE pte_pfn() and pte_dirty() have undefined behaviour when called on a non-present PTE. In migrate_vma_collect_pmd(), these functions may be invoked on non-present entries (e.g., device-private entries), leading to potential crashes from pte_pfn() or incorrect dirty folio accounting from pte_dirty(). Fix both by guarding with pte_present() checks.
Title mm: migrate_device: fix pte_pfn/pte_dirty called on non-present PTE
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-28T06:52:51.924Z

Reserved: 2026-08-26T14:34:25.784Z

Link: CVE-2026-80686

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-28T08:16:54.067

Modified: 2026-08-28T08:16:54.067

Link: CVE-2026-80686

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-28T10:00:06Z

Weaknesses