CVE-2023-53832

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
09/12/2025
Last modified:
09/12/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> md/raid10: fix null-ptr-deref in raid10_sync_request<br /> <br /> init_resync() inits mempool and sets conf-&gt;have_replacemnt at the beginning<br /> of sync, close_sync() frees the mempool when sync is completed.<br /> <br /> After [1] recovery might be skipped and init_resync() is called but<br /> close_sync() is not. null-ptr-deref occurs with r10bio-&gt;dev[i].repl_bio.<br /> <br /> The following is one way to reproduce the issue.<br /> <br /> 1) create a array, wait for resync to complete, mddev-&gt;recovery_cp is set<br /> to MaxSector.<br /> 2) recovery is woken and it is skipped. conf-&gt;have_replacement is set to<br /> 0 in init_resync(). close_sync() not called.<br /> 3) some io errors and rdev A is set to WantReplacement.<br /> 4) a new device is added and set to A&amp;#39;s replacement.<br /> 5) recovery is woken, A have replacement, but conf-&gt;have_replacemnt is<br /> 0. r10bio-&gt;dev[i].repl_bio will not be alloced and null-ptr-deref<br /> occurs.<br /> <br /> Fix it by not calling init_resync() if recovery skipped.<br /> <br /> [1] commit 7e83ccbecd60 ("md/raid10: Allow skipping recovery when clean arrays are assembled")

Impact