Skip to main content

CVE-2024-45029: Vulnerability in Linux Linux

Medium
VulnerabilityCVE-2024-45029cvecve-2024-45029
Published: Wed Sep 11 2024 (09/11/2024, 15:14:00 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: i2c: tegra: Do not mark ACPI devices as irq safe On ACPI machines, the tegra i2c module encounters an issue due to a mutex being called inside a spinlock. This leads to the following bug: BUG: sleeping function called from invalid context at kernel/locking/mutex.c:585 ... Call trace: __might_sleep __mutex_lock_common mutex_lock_nested acpi_subsys_runtime_resume rpm_resume tegra_i2c_xfer The problem arises because during __pm_runtime_resume(), the spinlock &dev->power.lock is acquired before rpm_resume() is called. Later, rpm_resume() invokes acpi_subsys_runtime_resume(), which relies on mutexes, triggering the error. To address this issue, devices on ACPI are now marked as not IRQ-safe, considering the dependency of acpi_subsys_runtime_resume() on mutexes.

AI-Powered Analysis

AILast updated: 06/29/2025, 00:09:37 UTC

Technical Analysis

CVE-2024-45029 is a vulnerability identified in the Linux kernel specifically affecting the tegra i2c module on ACPI-enabled machines. The root cause of the issue lies in improper locking behavior during runtime power management resume operations. The vulnerability manifests when a mutex lock is attempted inside a spinlock context, which is an invalid operation in kernel programming and leads to a BUG error: "sleeping function called from invalid context." Technically, during the __pm_runtime_resume() function, a spinlock (dev->power.lock) is acquired before calling rpm_resume(). The rpm_resume() function subsequently calls acpi_subsys_runtime_resume(), which internally uses mutexes. Since mutexes can sleep but spinlocks cannot, this results in a kernel bug due to the violation of locking rules. The fix implemented marks devices on ACPI as not IRQ-safe to prevent this unsafe locking sequence, acknowledging that acpi_subsys_runtime_resume() depends on mutexes and thus cannot be safely called under spinlock protection. This vulnerability is a kernel-level defect that can cause system instability or kernel panics when the affected code path is executed, particularly during power management resume cycles on ACPI machines using the tegra i2c driver. No known exploits are reported in the wild, and no CVSS score has been assigned yet.

Potential Impact

For European organizations, the impact of CVE-2024-45029 primarily concerns system stability and availability rather than direct confidentiality or integrity breaches. Systems running Linux kernels with the affected tegra i2c module on ACPI hardware platforms may experience kernel panics or crashes during power management resume operations, potentially leading to unexpected downtime or service interruptions. This is particularly relevant for embedded systems, IoT devices, or specialized hardware using Nvidia Tegra SoCs running Linux with ACPI support. Organizations relying on such devices for critical infrastructure, industrial control, or edge computing could face operational disruptions. While no direct remote code execution or privilege escalation is indicated, the denial-of-service-like effect from kernel crashes can impact availability of services. European enterprises with Linux-based infrastructure that includes Tegra hardware or ACPI-enabled devices should be aware of this vulnerability to avoid unexpected system failures. The absence of known exploits reduces immediate risk, but the vulnerability should be addressed promptly to maintain system reliability.

Mitigation Recommendations

To mitigate CVE-2024-45029, organizations should apply the latest Linux kernel patches that include the fix marking ACPI devices as not IRQ-safe in the tegra i2c driver. Since this is a kernel-level issue, updating to a patched kernel version is the most effective and recommended approach. For environments where immediate patching is not feasible, consider the following additional steps: 1) Avoid using runtime power management features on affected devices if possible, to prevent triggering the problematic code path. 2) Monitor system logs for kernel BUG messages related to mutex and spinlock misuse, which can indicate attempts to trigger the vulnerability. 3) Test kernel updates in staging environments to ensure compatibility and stability before deployment. 4) For embedded or IoT devices, coordinate with hardware vendors or Linux distribution maintainers to obtain timely kernel updates. 5) Implement robust system monitoring and automated reboot mechanisms to minimize downtime in case of kernel panics. These targeted mitigations go beyond generic advice by focusing on the specific driver and power management context involved.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-08-21T05:34:56.685Z
Cisa Enriched
true
Cvss Version
null
State
PUBLISHED

Threat ID: 682d9826c4522896dcbe0f3b

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

Last enriched: 6/29/2025, 12:09:37 AM

Last updated: 8/6/2025, 10:55:09 PM

Views: 10

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