Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

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

EPSS 0.03% · P7
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2026-23100

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
mm/hugetlb: fix hugetlb_pmd_shared()
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: mm/hugetlb: fix hugetlb_pmd_shared() Patch series "mm/hugetlb: fixes for PMD table sharing (incl. using mmu_gather)", 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 hugetlb_pmd_shared() 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 mmu_gather. 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->pt_share_count to identify sharing. We didn't convert hugetlb_pmd_shared(), 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 migrate_pages() 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 PM_MMAP_EXCLUSIVE in the pagemap interface. Fix it by properly using ptdesc_pmd_is_shared() in hugetlb_pmd_shared().
Source: NVD (National Vulnerability Database)
CVSS Information
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Type
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于hugetlb_pmd_shared函数未能正确检测共享,可能导致内存管理错误。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux 94b4b41d0cdf5cfd4d4325bc0e6e9e0d0e996133 ~ 8ae48255bcb17b32436be97553dca848730d365f -
LinuxLinux 6.13 -

II. Public POCs for CVE-2026-23100

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-23100

登录查看更多情报信息。

Same Patch Batch · Linux · 2026-02-04 · 79 CVEs total

CVE-2026-230988.8 HIGHnetrom: fix double-free in nr_route_frame()
CVE-2026-230667.8 HIGHrxrpc: Fix recvmsg() unconditional requeue
CVE-2026-230777.8 HIGHmm/vma: fix anon_vma UAF on mremap() faulted, unfaulted merge
CVE-2026-230747.8 HIGHnet/sched: Enforce that teql can only be used as root qdisc
CVE-2026-231037.8 HIGHipvlan: Make the addrs_lock be per port
CVE-2026-231057.8 HIGHnet/sched: qfq: Use cl_is_active to determine whether class is active in qfq_rm_from_ag
CVE-2026-230957.5 HIGHgue: Fix skb memleak with inner IP protocol 0.
CVE-2025-71198iio: imu: st_lsm6dsx: fix iio_chan_spec for sensors without event detection
CVE-2025-71197w1: therm: Fix off-by-one buffer overflow in alarms_store
CVE-2025-71199iio: adc: at91-sama5d2_adc: Fix potential use-after-free in sama5d2_adc driver
CVE-2026-23056uacce: implement mremap in uacce_vm_ops to return -EPERM
CVE-2026-23055i2c: riic: Move suspend handling to NOIRQ phase
CVE-2026-23051drm/amdgpu: fix drm panic null pointer when driver not support atomic
CVE-2026-23057vsock/virtio: Coalesce only linear skb
CVE-2026-23058can: ems_usb: ems_usb_read_bulk_callback(): fix URB memory leak
CVE-2026-23053NFS: Fix a deadlock involving nfs_release_folio()
CVE-2026-23065platform/x86/amd: Fix memory leak in wbrf_record()
CVE-2026-23064net/sched: act_ife: avoid possible NULL deref
CVE-2026-23063uacce: ensure safe queue release with state management
CVE-2026-23067iommu/io-pgtable-arm: fix size_t signedness bug in unmap path

Showing top 20 of 79 CVEs. View all on vendor page → →

IV. Related Vulnerabilities

V. Comments for CVE-2026-23100

No comments yet


Leave a comment