High severity · published May 8, 2026
CVE-2026-43303
mm/page_alloc: clear page->private in free_pages_prepare()
7.8
CVSS
0.2%
EPSS
No
On KEV
Description
In the Linux kernel, the following vulnerability has been resolved:
mm/page_alloc: clear page->private in free_pages_prepare()
Several subsystems (slub, shmem, ttm, etc.) use page->private but don't
clear it before freeing pages. When these pages are later allocated as
high-order pages and split via split_page(), tail pages retain stale
page->private values.
This causes a use-after-free in the swap subsystem. The swap code uses
page->private to track swap count continuations, assuming freshly
allocated pages have page->private == 0. When stale values are present,
swap_count_continued() incorrectly assumes the continuation list is valid
and iterates over uninitialized page->lru containing LIST_POISON values,
causing a crash:
KASAN: maybe wild-memory-access in range [0xdead000000000100-0xdead000000000107]
RIP: 0010:__do_sys_swapoff+0x1151/0x1860
Fix this by clearing page->private in free_pages_prepare(), ensuring all
freed pages have clean state regardless of previous use.
CVSS vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Attack vector
Local
Complexity
Low
Privileges
Low
User interaction
None
Confidentiality
High
Integrity
High
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.2% · higher than 7% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
KE
Kernel · Linux
5.18.1 before 6.18.16; 6.19 before 6.19.6; 5.18; 5.18; 5.18; 5.18; +2 more · source: NVD
LI
Linux · Linux
3b8000ae185cb068adbda5f966a3835053c85fd4 before e7790ab165713b79b1617ce659742ceb3a859d05; 3b8000ae185cb068adbda5f966a3835053c85fd4 before 3edb8ebbf79b9016040e8f3421d723ae3d542b32; 3b8000ae185cb068adbda5f966a3835053c85fd4 before f9719e32a67b4b00b3c9b133e8b5ffa72a26b67b; 3b8000ae185cb068adbda5f966a3835053c85fd4 before 23b82b7a26182ad840ae67d390d7ec9771e8c00f; 3b8000ae185cb068adbda5f966a3835053c85fd4 before d757c793853ec5483eb41ec2942c300b8fa720fb; 3b8000ae185cb068adbda5f966a3835053c85fd4 before ac1ea219590c09572ed5992dc233bbf7bb70fef9; +1 more · source: vendor
SS
SIMATIC S7-1500 CPU 1518-4 PN/DP MFP · Siemens
V3.1.6; V3.1.7; V3.1.6; V3.1.7 · source: CISA
SS
SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP · Siemens
V3.1.6; V3.1.7; V3.1.6; V3.1.7 · source: CISA
SS
SIMATIC S7-1500 TM MFP - GNU/Linux subsystem · Siemens
0 · source: CISA
SS
SIPLUS S7-1500 CPU 1518-4 PN/DP MFP · Siemens
V3.1.6; V3.1.7 · source: CISA
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-43303
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-43303
Patch
https://git.kernel.org/stable/c/23b82b7a26182ad840ae67d390d7ec9771e8c00f
git.kernel.org
https://git.kernel.org/stable/c/3edb8ebbf79b9016040e8f3421d723ae3d542b32
Patch
https://git.kernel.org/stable/c/ac1ea219590c09572ed5992dc233bbf7bb70fef9
Patch
https://git.kernel.org/stable/c/d757c793853ec5483eb41ec2942c300b8fa720fb
git.kernel.org
https://git.kernel.org/stable/c/e7790ab165713b79b1617ce659742ceb3a859d05
git.kernel.org
https://git.kernel.org/stable/c/f9719e32a67b4b00b3c9b133e8b5ffa72a26b67b
More from Kernel
9.8
CVE-2025-39682
tls: fix handling of zero-length records on the rx_list
8.8
CVE-2026-53266
netfilter: bridge: make ebt_snat ARP rewrite writable
8.8
CVE-2013-6282
Linux Kernel Improper Input Validation Vulnerability
8.4
CVE-2022-0185
Linux Kernel Heap-Based Buffer Overflow Vulnerability
8.4
CVE-2013-2094
Linux Kernel Privilege Escalation Vulnerability
