CVE-2026-68163: mm/page_vma_mapped: fix device-private PMD handling
In the Linux kernel, the following vulnerability has been resolved:
mm/pagevmamapped: fix device-private PMD handling
Commit 65edfda6f3f2 ("mm/rmap: extend rmap and migration support device-private entries") introduced the concept of device-private PMD entries, but did not correctly update the rmap walk code to account for them.
As a result, when pagevmamappedwalk() encounters device-private PMD entries, it takes no action other than to acquire the PMD lock and exit.
However this is highly problematic for two reasons - firstly, device private entries possess a PFN so checkpmd() needs to be called to ensure an overlapping PFN range.
Secondly, and more importantly, if PVMWMIGRATION is set the caller assumes the returned entry is a migration entry, resulting in memory corruption when the caller tries to interpret the device private entry as such.
In addition, commit 146287290023 ("mm/hugememory: implement device-private THP splitting") allowed device private PMDs to be split like THP mappings, but again did not update this code path.
As a result, we might race a PMD split prior to acquiring the PMD lock.
This patch addresses all of these issues by invoking checkpmd(), ensuring PMVWMIGRATION is not set and checks whether a split raced us we do for PMD THP and migration entries.
Instead of checking for a subset of the cases after taking the pmdlock(), put device-private along with pmdtranshuge() and pmdismigrationentry(). Also remove thpmigrationsupported() as it is already guarded by pmdismigrationentry().
[akpm@linux-foundation.org: fix Raspberry Pi 1 build, per David]
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
ubuntu/linux-aws-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1014.14~24.04.1 - Upgrade
Upgrade
ubuntu/linux-azure-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1017.17~24.04.1 - Upgrade
Upgrade
ubuntu/linux-azure-fde-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1016.16~24.04.1 - Upgrade
Upgrade
ubuntu/linux-gcp-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1014.14~24.04.1 - Upgrade
Upgrade
ubuntu/linux-hwe-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-38.38~24.04.4 - Upgrade
Upgrade
ubuntu/linux-nvidia-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1024.25~24.04.1 - Upgrade
Upgrade
ubuntu/linux-oracle-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1013.13~24.04.1 - Upgrade
Upgrade
ubuntu/linux-riscv-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-38.38.1~24.04.1 - Upgrade
Upgrade
ubuntu/linuxto a version that resolves this vulnerability.Fixed in 7.0.0-38.38 - Upgrade
Upgrade
ubuntu/linux-awsto a version that resolves this vulnerability.Fixed in 7.0.0-1014.14 - Upgrade
Upgrade
ubuntu/linux-azureto a version that resolves this vulnerability.Fixed in 7.0.0-1017.17 - Upgrade
Upgrade
ubuntu/linux-azure-fdeto a version that resolves this vulnerability.Fixed in 7.0.0-1016.16 - Upgrade
Upgrade
ubuntu/linux-gcpto a version that resolves this vulnerability.Fixed in 7.0.0-1014.14 - Upgrade
Upgrade
ubuntu/linux-gketo a version that resolves this vulnerability.Fixed in 7.0.0-1008.9 - Upgrade
Upgrade
ubuntu/linux-ibmto a version that resolves this vulnerability.Fixed in 7.0.0-1015.15 - Upgrade
Upgrade
ubuntu/linux-nvidia-bosto a version that resolves this vulnerability.Fixed in 7.0.0-2022.23 - Upgrade
Upgrade
ubuntu/linux-oem-7.0to a version that resolves this vulnerability.Fixed in 7.0.0-1015.15 - Upgrade
Upgrade
ubuntu/linux-oracleto a version that resolves this vulnerability.Fixed in 7.0.0-1013.13 - Upgrade
Upgrade
ubuntu/linux-realtimeto a version that resolves this vulnerability.Fixed in 7.0.0-38.38.1 - Upgrade
Upgrade
ubuntu/linux-riscvto a version that resolves this vulnerability.Fixed in 7.0.0-38.38.1
Event History
Frequently Asked Questions
What is the severity of CVE-2026-68163?
CVE-2026-68163 has a risk rating of 50.
How do I fix CVE-2026-68163?
To fix CVE-2026-68163, update your Linux kernel to the latest version that includes the patch for this vulnerability.
What is CVE-2026-68163 about?
CVE-2026-68163 addresses an issue in the Linux kernel related to the handling of device-private PMD entries.
When was CVE-2026-68163 published?
CVE-2026-68163 was published on August 10, 2026.
What impact does CVE-2026-68163 have on the Linux kernel?
CVE-2026-68163 could lead to improper handling of device-private page mappings, potentially affecting system stability and security.