Skip to main content

CVE-2024-26899: Vulnerability in Linux Linux

High
VulnerabilityCVE-2024-26899cvecve-2024-26899
Published: Wed Apr 17 2024 (04/17/2024, 10:27:49 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: block: fix deadlock between bd_link_disk_holder and partition scan 'open_mutex' of gendisk is used to protect open/close block devices. But in bd_link_disk_holder(), it is used to protect the creation of symlink between holding disk and slave bdev, which introduces some issues. When bd_link_disk_holder() is called, the driver is usually in the process of initialization/modification and may suspend submitting io. At this time, any io hold 'open_mutex', such as scanning partitions, can cause deadlocks. For example, in raid: T1 T2 bdev_open_by_dev lock open_mutex [1] ... efi_partition ... md_submit_bio md_ioctl mddev_syspend -> suspend all io md_add_new_disk bind_rdev_to_array bd_link_disk_holder try lock open_mutex [2] md_handle_request -> wait mddev_resume T1 scan partition, T2 add a new device to raid. T1 waits for T2 to resume mddev, but T2 waits for open_mutex held by T1. Deadlock occurs. Fix it by introducing a local mutex 'blk_holder_mutex' to replace 'open_mutex'.

AI-Powered Analysis

AILast updated: 06/29/2025, 19:57:57 UTC

Technical Analysis

CVE-2024-26899 is a concurrency vulnerability in the Linux kernel's block device subsystem that can lead to a deadlock condition. The issue arises from improper locking mechanisms involving the 'open_mutex' of the gendisk structure, which is intended to protect open and close operations on block devices. Specifically, the function bd_link_disk_holder() uses 'open_mutex' to protect the creation of symbolic links between a holding disk and its slave block devices. However, bd_link_disk_holder() is typically invoked during device initialization or modification phases, where I/O operations may be suspended. Concurrently, other kernel threads performing I/O operations that also acquire 'open_mutex'—such as partition scanning—may cause circular wait conditions. The provided example illustrates two threads: Thread 1 (T1) scanning partitions and holding 'open_mutex', and Thread 2 (T2) adding a new device to a RAID array and attempting to acquire 'open_mutex' within bd_link_disk_holder(). T1 waits for T2 to resume RAID device operations, while T2 waits for 'open_mutex' held by T1, resulting in a deadlock. This deadlock can halt block device operations, potentially impacting system stability and availability. The fix replaces the use of 'open_mutex' in bd_link_disk_holder() with a new local mutex 'blk_holder_mutex', isolating the locking scope and preventing the circular wait. No known exploits are reported in the wild, and no CVSS score has been assigned yet.

Potential Impact

For European organizations, this vulnerability primarily threatens system availability and operational continuity, especially for those relying on Linux-based servers and storage solutions. Deadlocks in block device management can cause system hangs or delays in I/O operations, which may disrupt critical services, data processing, and storage access. Organizations operating RAID arrays or complex storage configurations on Linux are particularly at risk. This can affect sectors such as finance, healthcare, telecommunications, and government services where Linux servers are prevalent. While the vulnerability does not directly expose confidentiality or integrity risks, the resulting denial of service conditions could lead to operational downtime, impacting business processes and service level agreements. Additionally, recovery from such deadlocks may require system reboots or manual intervention, increasing operational costs and incident response efforts.

Mitigation Recommendations

European organizations should prioritize applying the official Linux kernel patches that introduce the 'blk_holder_mutex' to replace the problematic 'open_mutex' usage in bd_link_disk_holder(). Kernel updates should be tested and deployed promptly in production environments, especially on systems managing RAID arrays or complex block device configurations. System administrators should monitor kernel logs for signs of deadlocks or I/O stalls related to block devices. Implementing proactive monitoring of RAID health and block device status can help detect early symptoms. Where immediate patching is not feasible, organizations can consider temporarily reducing concurrent partition scans or device modifications during critical operations to minimize deadlock risk. Additionally, maintaining robust backup and recovery procedures ensures resilience against potential downtime caused by this issue. Coordination with Linux distribution vendors for timely updates and advisories is recommended.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-02-19T14:20:24.187Z
Cisa Enriched
true
Cvss Version
null
State
PUBLISHED

Threat ID: 682d982bc4522896dcbe3eaa

Added to database: 5/21/2025, 9:08:59 AM

Last enriched: 6/29/2025, 7:57:57 PM

Last updated: 7/27/2025, 1:38:43 AM

Views: 6

Actions

PRO

Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.

Please log in to the Console to use AI analysis features.

Need enhanced features?

Contact root@offseq.com for Pro access with improved analysis and higher rate limits.

Latest Threats