Skip to main content

CVE-2024-38390: Vulnerability in Linux Linux

Medium
VulnerabilityCVE-2024-38390cvecve-2024-38390
Published: Fri Jun 21 2024 (06/21/2024, 10:18:13 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: drm/msm/a6xx: Avoid a nullptr dereference when speedbin setting fails Calling a6xx_destroy() before adreno_gpu_init() leads to a null pointer dereference on: msm_gpu_cleanup() : platform_set_drvdata(gpu->pdev, NULL); as gpu->pdev is only assigned in: a6xx_gpu_init() |_ adreno_gpu_init |_ msm_gpu_init() Instead of relying on handwavy null checks down the cleanup chain, explicitly de-allocate the LLC data and free a6xx_gpu instead. Patchwork: https://patchwork.freedesktop.org/patch/588919/

AI-Powered Analysis

AILast updated: 06/28/2025, 03:41:43 UTC

Technical Analysis

CVE-2024-38390 is a vulnerability identified in the Linux kernel, specifically within the Direct Rendering Manager (DRM) subsystem for Qualcomm Adreno GPUs (a6xx series). The flaw arises due to improper handling of null pointers during the GPU cleanup process. When the speedbin setting fails, the function a6xx_destroy() may be called before the GPU initialization function adreno_gpu_init(), leading to a null pointer dereference. This occurs because the platform device pointer (gpu->pdev) is only assigned during the initialization sequence (a6xx_gpu_init -> adreno_gpu_init -> msm_gpu_init). If cleanup is triggered prematurely, the code attempts to dereference gpu->pdev, which is null, causing a kernel crash. The patch addresses this by explicitly de-allocating Last Level Cache (LLC) data and freeing the a6xx_gpu structure instead of relying on null checks down the cleanup chain. This vulnerability is a classic use-after-free or null pointer dereference bug that can cause denial of service (DoS) conditions by crashing the kernel. No known exploits are reported in the wild as of the publication date. The affected versions include specific Linux kernel commits referenced by their hashes, indicating this is a recent and targeted fix in the kernel source. The vulnerability is technical and low-level, affecting systems running Linux kernels with the affected DRM driver for Qualcomm Adreno a6xx GPUs, commonly found in embedded devices, mobile platforms, and some specialized hardware running Linux. The absence of a CVSS score suggests this is a newly disclosed issue pending formal scoring. The root cause is a race or ordering condition in driver initialization and cleanup routines leading to unsafe memory access.

Potential Impact

For European organizations, the primary impact of CVE-2024-38390 is the potential for denial of service on Linux systems utilizing Qualcomm Adreno a6xx GPUs. This can manifest as kernel panics or system crashes, leading to service interruptions. Organizations relying on embedded Linux devices, mobile devices, or specialized hardware with these GPUs in critical infrastructure, industrial control systems, or telecommunications equipment could experience operational disruptions. While this vulnerability does not directly lead to privilege escalation or data leakage, the resulting instability can affect availability and reliability of services. In sectors such as manufacturing, automotive, or IoT deployments prevalent in Europe, affected devices may require urgent patching to maintain uptime. Since no known exploits exist yet, the immediate risk is moderate, but the vulnerability could be leveraged in targeted attacks to cause disruption. The impact is more pronounced in environments where these GPUs are integral to device operation and where kernel crashes cannot be tolerated.

Mitigation Recommendations

European organizations should take the following specific steps: 1) Identify Linux systems using Qualcomm Adreno a6xx GPUs, particularly embedded or mobile devices running affected kernel versions. 2) Apply the official Linux kernel patches that fix this vulnerability as soon as they are available from trusted sources or Linux distribution vendors. 3) For devices where kernel upgrades are not immediately feasible, implement monitoring to detect kernel panics or crashes related to GPU driver failures. 4) Coordinate with hardware vendors to obtain firmware or driver updates that incorporate the fix. 5) In development or testing environments, reproduce the issue to validate the fix and ensure stability. 6) Review device initialization and cleanup sequences in custom or proprietary drivers that may interact with the affected DRM code to prevent similar issues. 7) Employ robust system recovery mechanisms to minimize downtime in case of crashes. 8) Maintain strict change management and patch deployment policies to ensure timely remediation. These steps go beyond generic advice by focusing on identification of affected hardware, vendor coordination, and operational continuity planning.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-06-21T10:12:11.484Z
Cisa Enriched
true
Cvss Version
null
State
PUBLISHED

Threat ID: 682d9821c4522896dcbdddcb

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

Last enriched: 6/28/2025, 3:41:43 AM

Last updated: 7/31/2025, 5:37:10 PM

Views: 13

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