Skip to content
Fencer Vulns
medium 5.5

CVE-2024-39476 json

md/raid5: fix deadlock that raid5d() wait for itself to clear MD_SB_CHANGE_PENDING

published 2024-07-05 2 y ago modified 2026-06-17 4 mo ago also EUVD-2024-38001

cvss
5.5
version 3.1, NVD
cisa kev
Not listed
not in CISA's catalog
epss
0.2%
EPSS 0.2% chance of exploitation in 30 days, percentile 7%
public exploits
0
none known

Summary

In the Linux kernel, the following vulnerability has been resolved:

md/raid5: fix deadlock that raid5d() wait for itself to clear MD_SB_CHANGE_PENDING

Xiao reported that lvm2 test lvconvert-raid-takeover.sh can hang with small possibility, the root cause is exactly the same as commit bed9e27baf52 ("Revert "md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d"")

However, Dan reported another hang after that, and junxiao investigated the problem and found out that this is caused by plugged bio can't issue from raid5d().

Current implementation in raid5d() has a weird dependence:

1) md_check_recovery() from raid5d() must hold 'reconfig_mutex' to clear MD_SB_CHANGE_PENDING; 2) raid5d() handles IO in a deadloop, until all IO are issued; 3) IO from raid5d() must wait for MD_SB_CHANGE_PENDING to be cleared;

This behaviour is introduce before v2.6, and for consequence, if other context hold 'reconfig_mutex', and md_check_recovery() can't update super_block, then raid5d() will waste one cpu 100% by the deadloop, until 'reconfig_mutex' is released.

Refer to the implementation from raid1 and raid10, fix this problem by skipping issue IO if MD_SB_CHANGE_PENDING is still set after md_check_recovery(), daemon thread will be woken up when 'reconfig_mutex' is released. Meanwhile, the hang problem will be fixed as well.

Patch / fix

  • Linux Linux 4.15, 4.19.316, 5.4.278, 5.10.219, 5.15.161, 5.20, 6.1, 6.1.94, 6.6.34, 6.9.5, 6.10
  • linux Debian 12 6.1.94-1
  • linux Debian 14, Debian 13 6.9.7-1

debian advisories DEBIAN-CVE-2024-39476

  • linux Ubuntu 20.04 LTS 5.4.0-181.201
  • linux Ubuntu 22.04 LTS 5.15.0-102.112
  • linux-aws Ubuntu 20.04 LTS 5.4.0-1124.134
  • linux-aws Ubuntu 22.04 LTS 5.15.0-1057.63
  • linux-gcp Ubuntu 20.04 LTS 5.4.0-1128.137
  • linux-gcp Ubuntu 22.04 LTS 5.15.0-1055.63
  • linux-gke Ubuntu 22.04 LTS 5.15.0-1054.59
  • linux-ibm Ubuntu 20.04 LTS 5.4.0-1071.76

ubuntu advisories UBUNTU-CVE-2024-39476

Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0

  • kernel-rt RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-kvm RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-core RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-modules RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-debug-kvm RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-debug-core RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-debug-modules RHEL 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel-rt-modules-extra RHEL 8 4.18.0-553.16.1.rt7.357.el8_10

red hat advisories RHSA-2024:8107RHSA-2024:5102RHSA-2024:5101RHSA-2024:5928

  • kernel-rt Linux Micro 6.0 6.4.0-10.1
  • kernel-source-rt Linux Micro 6.0 6.4.0-10.1
  • kernel-livepatch-MICRO-6-0-RT_Update_2 Linux Micro 6.0 1-1.1
  • kernel-source Linux Micro 6.0 6.4.0-19.1
  • kernel-default Linux Micro 6.0 6.4.0-19.1
  • kernel-kvmsmall Linux Micro 6.0 6.4.0-19.1
  • kernel-default-base Linux Micro 6.0 6.4.0-17.1.1.51
  • kernel-livepatch-MICRO-6-0_Update_2 Linux Micro 6.0 1-1.1

suse advisories SUSE-SU-2025:20047-1SUSE-SU-2025:20044-1SUSE-SU-2025:0034-1SUSE-SU-2024:4364-1SUSE-SU-2024:4100-1SUSE-SU-2024:3985-1

  • kernel AlmaLinux 9 5.14.0-427.33.1.el9_4
  • rv AlmaLinux 9 5.14.0-427.33.1.el9_4
  • perf AlmaLinux 9 5.14.0-427.33.1.el9_4
  • rtla AlmaLinux 9 5.14.0-427.33.1.el9_4
  • bpftool AlmaLinux 9 7.3.0-427.33.1.el9_4
  • libperf AlmaLinux 9 5.14.0-427.33.1.el9_4
  • kernel-rt AlmaLinux 9 5.14.0-427.33.1.el9_4
  • kernel-64k AlmaLinux 9 5.14.0-427.33.1.el9_4

almalinux advisories ALSA-2024:5928ALSA-2024:5101ALSA-2024:5102

  • kernel Rocky Linux 8 4.18.0-553.16.1.el8_10.cloud.0.1
  • kernel-rt Rocky Linux 8 4.18.0-553.16.1.rt7.357.el8_10
  • kernel Rocky Linux 8 4.18.0-553.16.1.el8_10

rocky linux advisories RXSA-2024:5101RLSA-2024:5102RLSA-2024:5101

  • kernel CBL-Mariner 2.0 5.15.162.2-1

azure linux advisories AZL-43282

Azure Linux vulnerability data, Copyright (c) Microsoft Corporation, from https://github.com/microsoft/AzureLinuxVulnerabilityData via OSV, under the MIT licence; changed: normalised to fixed package versions per release. MIT

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2024-39476 updated cvss 5.5

kernel: md/raid5: fix deadlock that raid5d() wait for itself to clear MD_SB_CHANGE_PENDING

  • Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more
    affected: workaround, no fix planned “Out of support scope”
  • Red Hat Enterprise Linux 9 kernel-rt, kernel-rt-kvm, kernel-rt-core, kernel-rt-modules, kernel-rt-debug-kvm, kernel-rt-debug-core, +12 more
    affected: workaround, no fix available
  • Red Hat CodeReady Linux Builder EUS (v.8.8) kernel-debuginfo-common-x86_64 4.18.0-477.75.1.el8_8, kernel-debuginfo-common-aarch64 4.18.0-477.75.1.el8_8, kernel-debuginfo-common-ppc64le 4.18.0-477.75.1.el8_8
    fixed: vendor fix RHSA-2024:8107
  • Red Hat Enterprise Linux AppStream (v. 9) rv 5.14.0-427.33.1.el9_4, perf 5.14.0-427.33.1.el9_4, rtla 5.14.0-427.33.1.el9_4, kernel-devel-matched 5.14.0-427.33.1.el9_4, kernel-64k-devel-matched 5.14.0-427.33.1.el9_4, kernel-debug-devel-matched 5.14.0-427.33.1.el9_4, +6 more
    fixed: vendor fix RHSA-2024:5928
  • Red Hat Enterprise Linux BaseOS (v. 8) perf 4.18.0-553.16.1.el8_10, kernel 4.18.0-553.16.1.el8_10, bpftool 4.18.0-553.16.1.el8_10, kernel-core 4.18.0-553.16.1.el8_10, kernel-tools 4.18.0-553.16.1.el8_10, python3-perf 4.18.0-553.16.1.el8_10, +15 more
    fixed: vendor fix RHSA-2024:5101
  • Red Hat Enterprise Linux BaseOS (v. 9) bpftool 7.3.0-427.33.1.el9_4, kernel 5.14.0-427.33.1.el9_4, kernel-64k 5.14.0-427.33.1.el9_4, kernel-core 5.14.0-427.33.1.el9_4, kernel-tools 5.14.0-427.33.1.el9_4, python3-perf 5.14.0-427.33.1.el9_4, +28 more
    fixed: vendor fix RHSA-2024:5928
  • Red Hat Enterprise Linux BaseOS EUS (v.8.8) perf 4.18.0-477.75.1.el8_8, kernel 4.18.0-477.75.1.el8_8, bpftool 4.18.0-477.75.1.el8_8, kernel-core 4.18.0-477.75.1.el8_8, kernel-tools 4.18.0-477.75.1.el8_8, python3-perf 4.18.0-477.75.1.el8_8, +15 more
    fixed: vendor fix RHSA-2024:8107
  • Red Hat Enterprise Linux CRB (v. 8) kernel-debuginfo-common-x86_64 4.18.0-553.16.1.el8_10, kernel-debuginfo-common-aarch64 4.18.0-553.16.1.el8_10, kernel-debuginfo-common-ppc64le 4.18.0-553.16.1.el8_10
    fixed: vendor fix RHSA-2024:5101
show 5 more
  • Red Hat Enterprise Linux CRB (v. 9) libperf 5.14.0-427.33.1.el9_4, kernel-debuginfo-common-s390x 5.14.0-427.33.1.el9_4, kernel-debuginfo-common-x86_64 5.14.0-427.33.1.el9_4, kernel-debuginfo-common-aarch64 5.14.0-427.33.1.el9_4, kernel-debuginfo-common-ppc64le 5.14.0-427.33.1.el9_4
    fixed: vendor fix RHSA-2024:5928
  • Red Hat Enterprise Linux NFV (v. 8) kernel-rt 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-kvm 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-core 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-modules 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-debug-kvm 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-debug-core 4.18.0-553.16.1.rt7.357.el8_10, +4 more
    fixed: vendor fix RHSA-2024:5102
  • Red Hat Enterprise Linux NFV (v. 9) kernel-rt 5.14.0-427.33.1.el9_4, kernel-rt-kvm 5.14.0-427.33.1.el9_4, kernel-rt-core 5.14.0-427.33.1.el9_4, kernel-rt-modules 5.14.0-427.33.1.el9_4, kernel-rt-debug-kvm 5.14.0-427.33.1.el9_4, kernel-rt-debug-core 5.14.0-427.33.1.el9_4, +6 more
    fixed: vendor fix RHSA-2024:5928
  • Red Hat Enterprise Linux RT (v. 8) kernel-rt 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-core 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-modules 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-debug-core 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-debug-modules 4.18.0-553.16.1.rt7.357.el8_10, kernel-rt-modules-extra 4.18.0-553.16.1.rt7.357.el8_10, +2 more
    fixed: vendor fix RHSA-2024:5102
  • Red Hat Enterprise Linux RT (v. 9) kernel-rt 5.14.0-427.33.1.el9_4, kernel-rt-core 5.14.0-427.33.1.el9_4, kernel-rt-modules 5.14.0-427.33.1.el9_4, kernel-rt-debug-core 5.14.0-427.33.1.el9_4, kernel-rt-modules-core 5.14.0-427.33.1.el9_4, kernel-rt-debug-modules 5.14.0-427.33.1.el9_4, +4 more
    fixed: vendor fix RHSA-2024:5928

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

cisa ICSA-25-226-15 updated

Siemens SINEC OS

  • Siemens RUGGEDCOM RST2428P (6GK6242-6PA00) Siemens SCALANCE XC-300/XR-300/XC-400/XR-500WG/XR-500 family Siemens SCALANCE XCM-/XRM-/XCH-/XRH-300 family
    not affected

Facts from CISA's republication of the vendor's own advisory (CSAF); the linked advisory is the authoritative source. CISA notification · csaf

CISA SSVC

Exploitation
none
Automatable
no
Technical impact
partial
Assessed
2 y ago

Exploit prediction

0.18% chance of exploitation in the next 30 days, higher than 7% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
NVD 3.1 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Affected products

  • Linux Linux

Classification

Weakness
Technology feeds

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.