CVE-2025-38445

md/raid1: Fix stack memory use after return in raid1_reshape

HIGH
7.1
CVSS Score
Published: July 25, 2025 at 03:27 PM UTC
Updated: June 17, 2026 at 09:16 AM UTC
2 products affected across 2 vendorsLinux KernelDebian Linux

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH7.1
Exploit prediction
EPSS 0.2%

Description

In the Linux kernel, the following vulnerability has been resolved: md/raid1: Fix stack memory use after return in raid1_reshape In the raid1_reshape function, newpool is allocated on the stack and assigned to conf->r1bio_pool. This results in conf->r1bio_pool.wait.head pointing to a stack address. Accessing this address later can lead to a kernel panic. Example access path: raid1_reshape() { // newpool is on the stack mempool_t newpool, oldpool; // initialize newpool.wait.head to stack address mempool_init(&newpool, ...); conf->r1bio_pool = newpool; } raid1_read_request() or raid1_write_request() { alloc_r1bio() { mempool_alloc() { // if pool->alloc fails remove_element() { --pool->curr_nr; } } } } mempool_free() { if (pool->curr_nr < pool->min_nr) { // pool->wait.head is a stack address // wake_up() will try to access this invalid address // which leads to a kernel panic return; wake_up(&pool->wait); } } Fix: reinit conf->r1bio_pool.wait after assigning newpool.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

4.18 ≤ v < 5.10.2404.18 ≤ v < 5.15.1894.18 ≤ v < 5.4.2964.18 ≤ v < 6.1.1464.18 ≤ v < 6.12.394.18 ≤ v < 6.15.74.18 ≤ v < 6.164.18 ≤ v < 6.6.995.11 ≤ v < 5.15.1895.16 ≤ v < 6.1.1465.5 ≤ v < 5.10.2406.13 ≤ v < 6.15.76.2 ≤ v < 6.6.996.7 ≤ v < 6.12.394.186.16 rc16.16 rc26.16 rc36.16 rc46.16 rc5afeee514ce7f4cab605beedd03be71ebaf0c5fc8
Vendor states this is fixed in 12b00ec99624f8da8c325f2dd6e807df26df0025 (fixed)
Vendor states this is fixed in 48da050b4f54ed639b66278d0ae6f4107b2c4e2d (fixed)
Vendor states this is fixed in 5f35e48b76655e45522df338876dfef88dafcc71 (fixed)
Vendor states this is fixed in 61fd5e93006cf82ec8ee5c115ab5cf4bbd104bdb (fixed)
Vendor states this is fixed in 776e6186dc9ecbdb8a1b706e989166c8a99bbf64 (fixed)
Vendor states this is fixed in d67ed2ccd2d1dcfda9292c0ea8697a9d0f2f0d98 (fixed)
Vendor states this is fixed in d8a6853d00fbaa810765c8ed2f452a5832273968 (fixed)
Vendor states this is fixed in df5894014a92ff0196dbc212a7764e97366fd2b7 (fixed)
Vendor states this is fixed in 4.18 (unaffected)
Vendor states this is fixed in 5.10.240 (unaffected)
Vendor states this is fixed in 5.15.189 (unaffected)
Vendor states this is fixed in 5.4.296 (unaffected)
Vendor states this is fixed in 6.1.146 (unaffected)
Vendor states this is fixed in 6.12.39 (unaffected)
Vendor states this is fixed in 6.15.7 (unaffected)
Vendor states this is fixed in 6.16 (unaffected)
Vendor states this is fixed in 6.6.99 (unaffected)

References (10)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/12b00ec99624f8da8c325f2dd6e807df26df0025
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/48da050b4f54ed639b66278d0ae6f4107b2c4e2d
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/5f35e48b76655e45522df338876dfef88dafcc71
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/61fd5e93006cf82ec8ee5c115ab5cf4bbd104bdb
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/776e6186dc9ecbdb8a1b706e989166c8a99bbf64
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/d67ed2ccd2d1dcfda9292c0ea8697a9d0f2f0d98
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/d8a6853d00fbaa810765c8ed2f452a5832273968
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/df5894014a92ff0196dbc212a7764e97366fd2b7

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
CWE-125

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card