]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm: Clean up colorop objects during mode_config cleanup
authorChaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
Mon, 2 Feb 2026 09:41:59 +0000 (15:11 +0530)
committerSuraj Kandpal <suraj.kandpal@intel.com>
Tue, 10 Feb 2026 05:33:09 +0000 (11:03 +0530)
Tear down all registered drm_colorop objects during
drm_mode_config_cleanup() by invoking their destroy callbacks.

This ensures proper cleanup of color pipeline objects during DRM device
removal.

Signed-off-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>
Reviewed-by: Uma Shankar <uma.shankar@intel.com>
Reviewed-by: Alex Hung <alex.hung@amd.com>
Acked-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Suraj Kandpal <suraj.kandpal@intel.com>
Link: https://patch.msgid.link/20260202094202.2871478-7-chaitanya.kumar.borah@intel.com
drivers/gpu/drm/drm_mode_config.c

index d12db9b0bab8109e7f7adf63c835f92de808f50c..84ae8a23a36786705fea7c0eafd7f20813b7c8f9 100644 (file)
@@ -524,6 +524,7 @@ void drm_mode_config_cleanup(struct drm_device *dev)
        struct drm_property *property, *pt;
        struct drm_property_blob *blob, *bt;
        struct drm_plane *plane, *plt;
+       struct drm_colorop *colorop, *copt;
 
        list_for_each_entry_safe(encoder, enct, &dev->mode_config.encoder_list,
                                 head) {
@@ -553,6 +554,11 @@ void drm_mode_config_cleanup(struct drm_device *dev)
                drm_property_destroy(dev, property);
        }
 
+       list_for_each_entry_safe(colorop, copt, &dev->mode_config.colorop_list,
+                                head) {
+               colorop->funcs->destroy(colorop);
+       }
+
        list_for_each_entry_safe(plane, plt, &dev->mode_config.plane_list,
                                 head) {
                plane->funcs->destroy(plane);