In the Linux kernel, the following vulnerability has been resolved:
md: Don't ignore suspended array in md_check_recovery()
mddev_suspend() never stop sync_thread, hence it doesn't make sense to ignore suspended array in md_check_recovery(), which might cause sync_thread can't be unregistered.
After commit f52f5c71f3d4 ("md: fix stopping sync thread"), following hang can be triggered by test shell/integrity-caching.sh:
1) suspend the array: raid_postsuspend mddev_suspend
2) stop the array: raid_dtr md_stop __md_stop_writes stop_sync_thread set_bit(MD_RECOVERY_INTR, &mddev->recovery); md_wakeup_thread_directly(mddev->sync_thread); wait_event(..., !test_bit(MD_RECOVERY_RUNNING, &mddev->recovery))
3) sync thread done: md_do_sync set_bit(MD_RECOVERY_DONE, &mddev->recovery); md_wakeup_thread(mddev->thread);
4) daemon thread can't unregister sync thread: md_check_recovery if (mddev->suspended) return; -> return directly md_read_sync_thread clear_bit(MD_RECOVERY_RUNNING, &mddev->recovery); -> MD_RECOVERY_RUNNING can't be cleared, hence step 2 hang;
This problem is not just related to dm-raid, fix it by ignoring suspended array in md_check_recovery(). And follow up patches will improve dm-raid better to frozen sync thread during suspend.
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | No solution existsUpgrade linux | May 15, 2025 | Apr 3, 2024 |
| Redhat_linux | — | Upgrade kernelUpgrade kernel-rtNo solution exists | Dec 5, 2024 | Apr 3, 2024 |
| Suse | — | Upgrade kernel-debugUpgrade kernel-debug-vdsoUpgrade dtb-marvellUpgrade kernel-default-livepatchUpgrade kernel-rt_debug-develUpgrade kernel-source-azureUpgrade dtb-appleUpgrade kernel-devel-azureUpgrade gfs2-kmp-64kbUpgrade dtb-exynosUpgrade kernel-kvmsmallUpgrade kselftests-kmp-azureUpgrade kernel-debug-develUpgrade kernel-azure-optionalUpgrade reiserfs-kmp-defaultUpgrade dtb-amdUpgrade dtb-freescaleUpgrade cluster-md-kmp-azureUpgrade dtb-amazonUpgrade gfs2-kmp-azureUpgrade kernel-rt_debugUpgrade dtb-renesasUpgrade dtb-broadcomUpgrade kernel-zfcpdumpUpgrade dtb-hisiliconUpgrade kernel-docs-htmlUpgrade dtb-caviumUpgrade kernel-rt-optionalUpgrade kernel-syms-azureUpgrade kselftests-kmp-64kbUpgrade kernel-azure-livepatch-develUpgrade kernel-default-vdsoUpgrade dtb-lgUpgrade gfs2-kmp-defaultUpgrade kernel-64kbUpgrade kernel-kvmsmall-vdsoUpgrade kernel-default-develUpgrade ocfs2-kmp-defaultUpgrade dtb-allwinnerUpgrade dlm-kmp-64kbUpgrade kernel-kvmsmall-livepatch-develUpgrade dtb-alteraUpgrade kernel-obs-buildUpgrade reiserfs-kmp-64kbUpgrade kernel-azureUpgrade gfs2-kmp-rtUpgrade kernel-64kb-optionalUpgrade kernel-source-rtUpgrade kernel-source-vanillaUpgrade ocfs2-kmp-64kbUpgrade kernel-kvmsmall-develUpgrade kernel-sourceUpgrade kernel-rt-vdsoUpgrade kernel-64kb-livepatch-develUpgrade dtb-socionextUpgrade kernel-azure-extraUpgrade dtb-armUpgrade kernel-default-optionalUpgrade kernel-devel-rtUpgrade kernel-debug-livepatch-develUpgrade kernel-obs-qaUpgrade kernel-develUpgrade kernel-default-extraUpgrade kernel-symsUpgrade kernel-macrosUpgrade ocfs2-kmp-rtUpgrade dtb-sprdUpgrade dtb-amlogicUpgrade cluster-md-kmp-rtUpgrade kernel-docsUpgrade reiserfs-kmp-rtUpgrade kselftests-kmp-defaultUpgrade dtb-rockchipUpgrade kernel-azure-vdsoUpgrade kernel-64kb-develUpgrade dtb-qcomUpgrade dtb-mediatekUpgrade dlm-kmp-defaultUpgrade cluster-md-kmp-defaultUpgrade cluster-md-kmp-64kbUpgrade kernel-default-livepatch-develUpgrade kernel-64kb-extraUpgrade kernel-azure-develUpgrade kernel-rt-livepatchUpgrade dtb-xilinxUpgrade kernel-defaultUpgrade kselftests-kmp-rtUpgrade kernel-rt_debug-livepatch-develUpgrade dtb-apmUpgrade kernel-rt-develUpgrade ocfs2-kmp-azureUpgrade dtb-nvidiaUpgrade dlm-kmp-rtUpgrade kernel-syms-rtUpgrade kernel-default-base-rebuildUpgrade reiserfs-kmp-azureUpgrade kernel-rt-livepatch-develUpgrade dlm-kmp-azureUpgrade kernel-rtUpgrade kernel-rt-extraUpgrade kernel-rt_debug-vdsoUpgrade kernel-default-base | Jun 13, 2024 | Apr 3, 2024 |
| Ubuntu | — | Upgrade linux-raspi-realtime | Feb 11, 2025 | Apr 3, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub