From: Chaitanya Kumar Borah Date: Mon, 2 Feb 2026 09:41:59 +0000 (+0530) Subject: drm: Clean up colorop objects during mode_config cleanup X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fa15259eb65944551ad52988e5822dca0a21b090;p=thirdparty%2Fkernel%2Flinux.git drm: Clean up colorop objects during mode_config cleanup 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 Reviewed-by: Suraj Kandpal Reviewed-by: Uma Shankar Reviewed-by: Alex Hung Acked-by: Jani Nikula Signed-off-by: Suraj Kandpal Link: https://patch.msgid.link/20260202094202.2871478-7-chaitanya.kumar.borah@intel.com --- diff --git a/drivers/gpu/drm/drm_mode_config.c b/drivers/gpu/drm/drm_mode_config.c index d12db9b0bab81..84ae8a23a3678 100644 --- a/drivers/gpu/drm/drm_mode_config.c +++ b/drivers/gpu/drm/drm_mode_config.c @@ -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);