Skip to main content

CVE-2024-56701: Vulnerability in Linux Linux

High
VulnerabilityCVE-2024-56701cvecve-2024-56701
Published: Sat Dec 28 2024 (12/28/2024, 09:46:23 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: powerpc/pseries: Fix dtl_access_lock to be a rw_semaphore The dtl_access_lock needs to be a rw_sempahore, a sleeping lock, because the code calls kmalloc() while holding it, which can sleep: # echo 1 > /proc/powerpc/vcpudispatch_stats BUG: sleeping function called from invalid context at include/linux/sched/mm.h:337 in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 199, name: sh preempt_count: 1, expected: 0 3 locks held by sh/199: #0: c00000000a0743f8 (sb_writers#3){.+.+}-{0:0}, at: vfs_write+0x324/0x438 #1: c0000000028c7058 (dtl_enable_mutex){+.+.}-{3:3}, at: vcpudispatch_stats_write+0xd4/0x5f4 #2: c0000000028c70b8 (dtl_access_lock){+.+.}-{2:2}, at: vcpudispatch_stats_write+0x220/0x5f4 CPU: 0 PID: 199 Comm: sh Not tainted 6.10.0-rc4 #152 Hardware name: IBM pSeries (emulated by qemu) POWER9 (raw) 0x4e1202 0xf000005 of:SLOF,HEAD hv:linux,kvm pSeries Call Trace: dump_stack_lvl+0x130/0x148 (unreliable) __might_resched+0x174/0x410 kmem_cache_alloc_noprof+0x340/0x3d0 alloc_dtl_buffers+0x124/0x1ac vcpudispatch_stats_write+0x2a8/0x5f4 proc_reg_write+0xf4/0x150 vfs_write+0xfc/0x438 ksys_write+0x88/0x148 system_call_exception+0x1c4/0x5a0 system_call_common+0xf4/0x258

AI-Powered Analysis

AILast updated: 06/28/2025, 07:10:00 UTC

Technical Analysis

CVE-2024-56701 is a vulnerability identified in the Linux kernel specifically affecting the powerpc/pseries architecture. The issue stems from improper locking mechanism usage in the dtl_access_lock, which was implemented as a non-sleeping lock but needs to be a rw_semaphore, a sleeping lock. The vulnerability arises because the code holds the dtl_access_lock while calling kmalloc(), a memory allocation function that can sleep. Holding a non-sleeping lock during a sleeping operation leads to a kernel BUG due to invalid context, as demonstrated by the BUG message and call trace provided. This bug can cause kernel panics or crashes when the affected code path is executed, specifically when writing to /proc/powerpc/vcpudispatch_stats. The problem is rooted in kernel synchronization primitives and affects the stability and reliability of the Linux kernel on IBM pSeries POWER9 hardware or emulated environments. While no known exploits are reported in the wild, the vulnerability can lead to denial of service (DoS) conditions by crashing the kernel or causing system instability. The vulnerability is technical and low-level, requiring specific hardware or emulation environments to trigger, and involves kernel memory management and locking mechanisms.

Potential Impact

For European organizations using Linux systems on IBM pSeries POWER9 hardware or emulated environments, this vulnerability could lead to unexpected kernel crashes and system instability. This can disrupt critical services, especially in data centers, research institutions, or enterprises relying on POWER architecture for high-performance computing or virtualization. The impact is primarily on availability, as the kernel panic would cause system downtime and potential data loss if unsaved work or transactions are interrupted. Confidentiality and integrity impacts are minimal since the vulnerability does not directly allow privilege escalation or arbitrary code execution. However, the resulting denial of service could indirectly affect business continuity and operational resilience. Organizations with mission-critical workloads on affected platforms should prioritize patching to maintain system stability and avoid operational disruptions.

Mitigation Recommendations

To mitigate this vulnerability, affected organizations should apply the official Linux kernel patches that correct the locking mechanism by converting dtl_access_lock to a rw_semaphore. Since the issue relates to kernel code, updating to the latest stable Linux kernel version that includes this fix is essential. For environments where immediate patching is not feasible, administrators should avoid triggering the vulnerable code path, such as refraining from writing to /proc/powerpc/vcpudispatch_stats or similar interfaces until patched. Additionally, thorough testing of kernel updates in staging environments is recommended to ensure compatibility and stability. Monitoring system logs for kernel BUG messages related to dtl_access_lock can help detect attempts to trigger the vulnerability. Organizations should also maintain robust backup and recovery procedures to minimize downtime impact in case of kernel crashes. Finally, consider isolating critical workloads from POWER9 hardware or emulated environments until patches are applied.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-12-27T15:00:39.856Z
Cisa Enriched
false
Cvss Version
null
State
PUBLISHED

Threat ID: 682d9822c4522896dcbde58f

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

Last enriched: 6/28/2025, 7:10:00 AM

Last updated: 7/27/2025, 8:01:49 AM

Views: 12

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