CVE-2026-23100: mm/hugetlb: fix hugetlb_pmd_shared()

Published Feb 4, 2026
·
Updated

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

mm/hugetlb: fix hugetlbpmdshared()

Patch series "mm/hugetlb: fixes for PMD table sharing (incl. using mmugather)", v3.

One functional fix, one performance regression fix, and two related comment fixes.

I cleaned up my prototype I recently shared [1] for the performance fix, deferring most of the cleanups I had in the prototype to a later point. While doing that I identified the other things.

The goal of this patch set is to be backported to stable trees "fairly" easily. At least patch #1 and #4.

Patch #1 fixes hugetlbpmdshared() not detecting any sharing Patch #2 + #3 are simple comment fixes that patch #4 interacts with. Patch #4 is a fix for the reported performance regression due to excessive IPI broadcasts during fork()+exit().

The last patch is all about TLB flushes, IPIs and mmugather. Read: complicated

There are plenty of cleanups in the future to be had + one reasonable optimization on x86. But that's all out of scope for this series.

Runtime tested, with a focus on fixing the performance regression using the original reproducer [2] on x86.

This patch (of 4):

We switched from (wrongly) using the page count to an independent shared count. Now, shared page tables have a refcount of 1 (excluding speculative references) and instead use ptdesc->ptsharecount to identify sharing.

We didn't convert hugetlbpmdshared(), so right now, we would never detect a shared PMD table as such, because sharing/unsharing no longer touches the refcount of a PMD table.

Page migration, like mbind() or migratepages() would allow for migrating folios mapped into such shared PMD tables, even though the folios are not exclusive. In smaps we would account them as "private" although they are "shared", and we would be wrongly setting the PMMMAPEXCLUSIVE in the pagemap interface.

Fix it by properly using ptdescpmdisshared() in hugetlbpmdshared().

Affected Software

17 affected componentsFixes available
Linux Linux kernel
Linux Linux kernel>=5.10.239<5.11
Linux Linux kernel>=5.15.186<5.16
Linux Linux kernel>=6.1.142<6.2
Linux Linux kernel>=6.6.72<6.6.127
Linux Linux kernel>=6.12.9<6.12.74
Linux Linux kernel>=6.13.1<6.18.8
Linux Linux kernel=6.13
Linux Linux kernel=6.13-rc6
Linux Linux kernel=6.13-rc7
Linux Linux kernel=6.19-rc1
Linux Linux kernel=6.19-rc2
Linux Linux kernel=6.19-rc3
Linux Linux kernel=6.19-rc4
Linux Linux kernel=6.19-rc5
Linux Linux kernel=6.19-rc6
Microsoft azl3 kernel 6.6.126.1-1

Event History

Feb 4, 2026
CVE Published
via MITRE·04:08 PM
Data Sourced
via MITRE·04:08 PM
Description
Data Sourced
via NVD·05:16 PM
RemedyDescriptionSeverityAffected Software
Mar 22, 2026
Data Sourced
via Microsoft·08:01 AM
DescriptionSeverityWeaknessAffected Software
Updated
via Microsoft·08:01 AM
DescriptionSeverity

Frequently Asked Questions

1

What is the severity of CVE-2026-23100?

CVE-2026-23100 is considered a low severity vulnerability in the Linux kernel.

2

How does CVE-2026-23100 affect the Linux kernel?

CVE-2026-23100 affects the handling of hugetlb page tables, specifically related to PMD table sharing.

3

What are the potential impacts of CVE-2026-23100?

The impacts of CVE-2026-23100 may include functional and performance regressions in memory management.

4

How do I fix CVE-2026-23100?

To fix CVE-2026-23100, users should update their Linux kernel to the latest version that includes the relevant patch.

5

Is there any workaround for CVE-2026-23100?

There are no specific workarounds for CVE-2026-23100; applying the patch is the recommended solution.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203