VYPR
Unrated severityNVD Advisory· Published Dec 9, 2025· Updated Apr 15, 2026

CVE-2023-53849

CVE-2023-53849

Description

In the Linux kernel, the following vulnerability has been resolved:

drm/msm: fix workqueue leak on bind errors

Make sure to destroy the workqueue also in case of early errors during bind (e.g. a subcomponent failing to bind).

Since commit c3b790ea07a1 ("drm: Manage drm_mode_config_init with drmm_") the mode config will be freed when the drm device is released also when using the legacy interface, but add an explicit cleanup for consistency and to facilitate backporting.

Patchwork: https://patchwork.freedesktop.org/patch/525093/

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

A workqueue leak in the MSM DRM driver can occur on early bind errors, potentially leading to resource exhaustion.

Vulnerability

Overview

The vulnerability is a workqueue leak in the MSM DRM (Direct Rendering Manager) driver for Qualcomm Adreno GPUs in the Linux kernel. When the driver's bind function encounters early errors—such as a subcomponent failing to bind—the allocated workqueue is not properly destroyed. This occurs because the error path does not include a call to destroy the workqueue, leading to a resource leak.

Root

Cause and Exploitation

The root cause is the missing workqueue cleanup in error paths of the bind function. The commit that introduced drm_mode_config_init with drmm_ (managed device resource) ensures the mode config is freed when the DRM device is released, but the workqueue itself is not tied to that mechanism. The patch adds explicit cleanup for consistency and to facilitate backporting [1]. An attacker would need to trigger a bind failure, which could be achieved through a malicious or malformed device tree or a faulty display subcomponent. No special privileges are required if the attacker can control the device configuration.

Potential

Impact

If the workqueue leak is repeated (e.g., by repeatedly binding and failing to bind the driver), the system could exhaust kernel memory or reach a limit on workqueue allocations, potentially causing a denial of service (DoS). However, the leak is limited to the workqueue structure and does not provide code execution or privilege escalation.

Mitigation

The patch [1] fixes the issue by adding an explicit destroy_workqueue() call in the bind error path. The fix has been applied to the Linux kernel stable branches. Users should update their kernel to include this patch or a later version that contains it. There is no known workaround other than avoiding triggering the error condition.

AI Insight generated on May 19, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.

Affected products

1

Patches

4

Vulnerability mechanics

Generated on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

4

News mentions

0

No linked articles in our index yet.