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

arm64: tlb: Flush walk cache when unsharing PMD tables

When huge_pmd_unshare() is called to unshare a PMD table, the
tlb_unshare_pmd_ptdesc() function sets tlb->unshared_tables=true
but the aarch64 tlb_flush() only checked tlb->freed_tables to
determine whether to use TLBF_NONE (vae1is, invalidates walk
cache) or TLBF_NOWALKCACHE (vale1is, leaf-only).

This caused the stale PMD page table entry to remain in the walk cache
after unshare, potentially leading to incorrect page table walks.

Fix by including unshared_tables in the check, so that when
unsharing tables, TLBF_NONE is used and the walk cache is properly
invalidated.

Here is the detailed distinction between vae1is and vale1is:

| Instruction Combination | Actual Invalidation Scope |
| ------------------------ | --------------------------------------------------|
| `VAE1IS` + TTL=`0` | All entries at all levels (full invalidation) |
| `VAE1IS` + TTL=`2` (L2) | Non-leaf at Level 0/1 + leaf at Level 2 |
| `VALE1IS` + TTL=`0` | Leaf entries at all levels (non-leaf not cleared) |
| `VALE1IS` + TTL=`2` (L2) | Leaf entry at Level 2 only |
Published: 2026-07-19
Score: 7.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The flaw in the ARM64 TLB handling causes stale PMD page table entries to remain in the walk cache after the tables are unshared. These outdated entries may be used in subsequent page table walks, which can lead to incorrect memory translations, memory corruption, or privilege escalation. The bug originates from an improper check that omitted the unshared_tables flag, resulting in a full walk cache invalidation not being performed when necessary.

Affected Systems

All Linux kernel releases that run on ARM64 whose kernel configuration does not include the fix applying TLBF_NONE for unshared PMD tables are affected. The vendor/product list is Linux:Linux, and the CPE indicates all Linux kernels. No specific kernel version range appears in the CNA data, so any pre‑patch arm64 kernel is potentially vulnerable.

Risk and Exploitability

The CVSS score of 7.8 denotes high severity, while the EPSS score of less than 1% indicates a low probability of exploitation at this time. It is not listed in the CISA KEV catalog. An attack would require triggering a PMD unshare operation, which normally can only be performed by privileged kernel code, making the threat mainly relevant to local or already‑compromised users. The potential for memory corruption or privilege escalation justifies a prompt patch, but the low exploitation likelihood tempers the urgency compared to higher‑risk vulnerabilities.

Generated by OpenCVE AI on August 3, 2026 at 02:28 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply a Linux kernel update that contains the TLBF_NONE patch for unsharing PMD tables.
  • If an update cannot be applied immediately, reboot the system or use a maintenance tool to flush the TLB walk cache, thereby clearing stale entries.
  • Monitor kernel logs for unusual page table or TLB errors and ensure that no user processes invoke unshare operations without proper context.

Generated by OpenCVE AI on August 3, 2026 at 02:28 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Ubuntu USN Ubuntu USN USN-8593-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8603-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8618-1 Linux kernel vulnerabilities
History

Sun, 26 Jul 2026 09:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Wed, 22 Jul 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-825
References
Metrics threat_severity

None

threat_severity

Important


Wed, 22 Jul 2026 00:00:00 +0000

Type Values Removed Values Added
Weaknesses CWE-416

Mon, 20 Jul 2026 14:45:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.8, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}


Sun, 19 Jul 2026 15:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: arm64: tlb: Flush walk cache when unsharing PMD tables When huge_pmd_unshare() is called to unshare a PMD table, the tlb_unshare_pmd_ptdesc() function sets tlb->unshared_tables=true but the aarch64 tlb_flush() only checked tlb->freed_tables to determine whether to use TLBF_NONE (vae1is, invalidates walk cache) or TLBF_NOWALKCACHE (vale1is, leaf-only). This caused the stale PMD page table entry to remain in the walk cache after unshare, potentially leading to incorrect page table walks. Fix by including unshared_tables in the check, so that when unsharing tables, TLBF_NONE is used and the walk cache is properly invalidated. Here is the detailed distinction between vae1is and vale1is: | Instruction Combination | Actual Invalidation Scope | | ------------------------ | --------------------------------------------------| | `VAE1IS` + TTL=`0` | All entries at all levels (full invalidation) | | `VAE1IS` + TTL=`2` (L2) | Non-leaf at Level 0/1 + leaf at Level 2 | | `VALE1IS` + TTL=`0` | Leaf entries at all levels (non-leaf not cleared) | | `VALE1IS` + TTL=`2` (L2) | Leaf entry at Level 2 only |
Title arm64: tlb: Flush walk cache when unsharing PMD tables
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-05T12:36:48.899Z

Reserved: 2026-07-19T07:54:57.017Z

Link: CVE-2026-63875

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

Severity : Important

Publid Date: 2026-07-19T00:00:00Z

Links: CVE-2026-63875 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T02:30:07Z

Weaknesses
  • CWE-825

    Expired Pointer Dereference