mm/page_alloc: clear page->private in free_pages_prepare()
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | |||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Linux | Linux | unaffected |
|
|||||||||||||||||||||||||||
| Linux | Linux | affected |
|
Configuration 1 [-]
|
No data.
| Vendor | Product | Versions | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Linux | Linux Kernel |
|
||||||||||||||||||||||||
| Linux | Linux Kernel |
|
| Source | ID | Title |
|---|---|---|
Debian DLA |
DLA-4665-1 | linux security update |
Debian DLA |
DLA-4671-1 | linux-6.1 security update |
Debian DSA |
DSA-6355-1 | linux security update |
Ubuntu USN |
USN-8781-1 | Linux kernel (NVIDIA Tegra) vulnerabilities |
Ubuntu USN |
USN-8903-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8904-1 | Linux kernel (Azure) vulnerabilities |
Ubuntu USN |
USN-8905-1 | Linux kernel (GCP) vulnerabilities |
Ubuntu USN |
USN-8906-1 | Linux kernel (IBM) vulnerabilities |
Ubuntu USN |
USN-8903-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8905-2 | Linux kernel (GCP) vulnerabilities |
Ubuntu USN |
USN-9025-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-9066-1 | Linux kernel (HWE) vulnerabilities |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.172% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-457 |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-416 | |
| CPEs | cpe:2.3:o:linux:linux_kernel:5.18:-:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:5.18:rc4:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:5.18:rc5:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:5.18:rc6:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:5.18:rc7:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:5.18:rc9:*:*:*:*:*:* |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
cvssV3_1
|
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-909 | |
| References |
| |
| Metrics |
threat_severity
|
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| 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. | |
| Title | mm/page_alloc: clear page->private in free_pages_prepare() | |
| First Time appeared |
Linux
Linux linux Kernel |
|
| CPEs | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Linux
Linux linux Kernel |
|
| References |
|