CVE-2026-53378 Overview
CVE-2026-53378 is a memory leak vulnerability in the Linux kernel Direct Rendering Manager (DRM) subsystem. The flaw resides in the drm/colorop blob property handling during state duplication, destruction, and reset operations. The affected code path failed to release blob references before freeing state memory, leading to accumulated unreleased references throughout the state lifecycle.
The issue affects the drm_colorop_atomic_destroy_state(), drm_colorop_reset(), and drm_colorop_cleanup() functions. The implementation diverged from the reference pattern established by drm_crtc for DEGAMMA/GAMMA blob properties in 2016.
Critical Impact
Repeated atomic state operations against colorop objects leak kernel memory, degrading system stability over time on affected kernels.
Affected Products
- Linux kernel versions containing the drm/colorop blob property implementation
- Systems using DRM atomic modesetting with colorop state
- Graphics stacks relying on kernel color pipeline objects
Discovery Timeline
- 2026-07-19 - CVE-2026-53378 published to NVD
- 2026-07-19 - Last updated in NVD database
Technical Details for CVE-2026-53378
Vulnerability Analysis
The Linux kernel DRM subsystem manages color operation (colorop) pipeline objects through atomic state transitions. Each state can hold references to blob properties containing lookup tables or matrices. Proper reference counting requires releasing blob references before freeing state memory.
The defective implementation contained three related issues. First, drm_colorop_atomic_destroy_state() freed the state structure without decrementing the associated blob reference count. Second, drm_colorop_reset() directly invoked kfree() on the previous state instead of routing through the destroy helper, bypassing reference cleanup. Third, drm_colorop_cleanup() contained duplicated blob cleanup logic that diverged from the standard destruction path.
Repeated atomic commits, modeset cycles, or userspace applications that stress the color pipeline caused progressive kernel memory consumption. The leaked blob objects remain allocated until the affected driver instance is torn down.
Root Cause
The root cause is a Memory Leak [CWE-401] stemming from missing reference release calls in the state lifecycle. The colorop implementation did not follow the well-tested pattern used by drm_crtc since 2016, which routes all state destruction through a helper that first drops blob references.
Attack Vector
The vulnerability requires local access to trigger atomic modesetting operations against DRM colorop objects. There is no evidence of remote exploitation or privilege escalation potential. The primary impact is resource exhaustion through sustained kernel memory consumption on systems that exercise the color pipeline frequently.
The upstream fix introduces __drm_atomic_helper_colorop_destroy_state() as a common helper. The patch updates drm_colorop_atomic_destroy_state() to invoke the helper, routes drm_colorop_reset() through the destroy function, and simplifies drm_colorop_cleanup() to use the shared destruction path.
Detection Methods for CVE-2026-53378
Indicators of Compromise
- Progressive growth in kernel SUnreclaim memory reported by /proc/meminfo on systems running affected kernels
- Increasing drm_property_blob allocations visible through kmemleak scans
- Kernel warnings referencing unreleased DRM blob references during driver teardown
Detection Strategies
- Enable CONFIG_DEBUG_KMEMLEAK on test systems and inspect /sys/kernel/debug/kmemleak for unreferenced blob allocations tied to colorop code paths
- Track slab statistics for drm_property_blob and correlate growth with atomic commit activity
- Compare installed kernel build identifiers against the fixed commits 235b333e2878 and 271059f1d902 referenced in the kernel.org stable tree
Monitoring Recommendations
- Baseline kernel memory usage on graphics-heavy workloads and alert on sustained upward drift
- Log DRM atomic ioctl frequency to identify hosts that heavily exercise colorop state transitions
- Review kernel logs for repeated modeset failures that may indicate memory pressure from leaked blobs
How to Mitigate CVE-2026-53378
Immediate Actions Required
- Identify Linux systems running kernel versions containing the vulnerable drm/colorop implementation
- Apply the upstream stable kernel updates that merge commits 235b333e2878 and 271059f1d902
- Prioritize patching on workstations, display servers, and embedded devices that perform frequent atomic modesets
Patch Information
The fix is available in the Linux stable tree. Reference the upstream commits 235b333e2878 and 271059f1d902. Rebuild the kernel from a fixed stable release or install the vendor-supplied kernel package that incorporates these commits.
Workarounds
- Restart affected systems or reload graphics drivers periodically to reclaim leaked memory until the patch is applied
- Limit userspace applications that repeatedly commit colorop blob properties on unpatched hosts
- Monitor kernel memory usage and schedule maintenance windows before resource exhaustion impacts availability
# Verify installed kernel against fixed commit references
uname -r
zcat /proc/config.gz | grep CONFIG_DRM
# Inspect kernel memory leak reports if debug is enabled
cat /sys/kernel/debug/kmemleak | grep -i drm
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

