CVE-2024-38390: Vulnerability in Linux Linux
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 Analysis
Technical Summary
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.
Affected Countries
Germany, France, United Kingdom, Netherlands, Sweden, Finland, Poland, Italy, Spain
CVE-2024-38390: Vulnerability in Linux 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
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.
Affected Countries
For access to advanced analysis and higher rate limits, contact root@offseq.com
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
Related Threats
CVE-2025-9091: Hard-coded Credentials in Tenda AC20
LowCVE-2025-9090: Command Injection in Tenda AC20
MediumCVE-2025-9092: CWE-400 Uncontrolled Resource Consumption in Legion of the Bouncy Castle Inc. Bouncy Castle for Java - BC-FJA 2.1.0
LowCVE-2025-9089: Stack-based Buffer Overflow in Tenda AC20
HighCVE-2025-9088: Stack-based Buffer Overflow in Tenda AC20
HighActions
Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.
External Links
Need enhanced features?
Contact root@offseq.com for Pro access with improved analysis and higher rate limits.