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

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2025-40199— page_pool: Fix PP_MAGIC_MASK to avoid crashing on some 32-bit arches

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

I. Basic Information for CVE-2025-40199

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
page_pool: Fix PP_MAGIC_MASK to avoid crashing on some 32-bit arches
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: page_pool: Fix PP_MAGIC_MASK to avoid crashing on some 32-bit arches Helge reported that the introduction of PP_MAGIC_MASK let to crashes on boot on his 32-bit parisc machine. The cause of this is the mask is set too wide, so the page_pool_page_is_pp() incurs false positives which crashes the machine. Just disabling the check in page_pool_is_pp() will lead to the page_pool code itself malfunctioning; so instead of doing this, this patch changes the define for PP_DMA_INDEX_BITS to avoid mistaking arbitrary kernel pointers for page_pool-tagged pages. The fix relies on the kernel pointers that alias with the pp_magic field always being above PAGE_OFFSET. With this assumption, we can use the lowest bit of the value of PAGE_OFFSET as the upper bound of the PP_DMA_INDEX_MASK, which should avoid the false positives. Because we cannot rely on PAGE_OFFSET always being a compile-time constant, nor on it always being >0, we fall back to disabling the dma_index storage when there are not enough bits available. This leaves us in the situation we were in before the patch in the Fixes tag, but only on a subset of architecture configurations. This seems to be the best we can do until the transition to page types in complete for page_pool pages. v2: - Make sure there's at least 8 bits available and that the PAGE_OFFSET bit calculation doesn't wrap
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存在安全漏洞,该漏洞源于PP_MAGIC_MASK定义过宽,可能导致32位系统崩溃。
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 4f51fb0d257ff4d406ec27966902de075e3b118e ~ 15b8a5b4cdc16e9a8bb2a548e12a0fd92997605a -
LinuxLinux 6.16 -

II. Public POCs for CVE-2025-40199

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2025-40199

登录查看更多情报信息。

Same Patch Batch · Linux · 2025-11-12 · 96 CVEs total

CVE-2025-40175idpf: cleanup remaining SKBs in PTP flows
CVE-2025-40170net: use dst_dev_rcu() in sk_setup_caps()
CVE-2025-40171nvmet-fc: move lsop put work to nvmet_fc_ls_req_op
CVE-2025-40167ext4: detect invalid INLINE_DATA + EXTENTS flag combination
CVE-2025-40164usbnet: Fix using smp_processor_id() in preemptible code warnings
CVE-2025-40162ASoC: amd/sdw_utils: avoid NULL deref when devm_kasprintf() fails
CVE-2025-40163sched/deadline: Stop dl_server before CPU goes offline
CVE-2025-40161mailbox: zynqmp-ipi: Fix SGI cleanup on unbind
CVE-2025-40166drm/xe/guc: Check GuC running state before deregistering exec queue
CVE-2025-40174x86/mm: Fix SMP ordering in switch_mm_irqs_off()
CVE-2025-40172accel/qaic: Treat remaining == 0 as error in find_and_map_user_pages()
CVE-2025-40176tls: wait for pending async decryptions if tls_strp_msg_hold fails
CVE-2025-40173net/ip6_tunnel: Prevent perpetual tunnel growth
CVE-2025-40177accel/qaic: Fix bootlog initialization ordering
CVE-2025-40178pid: Add a judgment for ns null in pid_nr_ns
CVE-2025-40179ext4: verify orphan file size is not too big
CVE-2025-40180mailbox: zynqmp-ipi: Fix out-of-bounds access in mailbox cleanup loop
CVE-2025-40181x86/kvm: Force legacy PCI hole to UC when overriding MTRRs for TDX/SNP
CVE-2025-40183bpf: Fix metadata_dst leak __bpf_redirect_neigh_v{4,6}
CVE-2025-40182crypto: skcipher - Fix reqsize handling

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

IV. Related Vulnerabilities

V. Comments for CVE-2025-40199

No comments yet


Leave a comment