On Tue, 13 Jan 2026, Chaitanya Kumar Borah <[email protected]> 
wrote:
> This series contains follow-up fixes and improvements for the DRM color
> pipeline infrastructure that was introduced in v6.19.[1][2]
>
> The central handling of clean up of colorop from the mode_config list
> is missing. While vkms calls drm_colorop_pipeline_destroy() in vkms_destroy(),
> amd driver calls it only during failure of the init path and i915/xe driver
> does not call it at all. This means amd and intel leaks these objects on
> driver removal.
>
> This series adds the teardown of mode_config.colorop_list in 
> drm_mode_config_cleanup().
> Since, i915/xe sub-classes the drm_colorop within intel_colorop it was not 
> enough
> to just use drm_colorop_pipeline_destroy(). Therefore, this series
>
> - Introduces driver-managed destruction for drm_colorop objects and
>   updates core helpers to use driver-provided destroy callbacks.
> - Ensures all colorop objects are correctly torn down during
>   mode_config cleanup and driver removal.
>
> In addition to that following changes are made in the series
> - Fixes enum name lifetime leaks in color pipeline init in i915, amdgpu_dm, 
> and vkms
> - Corrects the ordering of the 3D LUT block in the i915 plane color pipeline
> - Refactors i915 plane color pipeline initialization to reliably clean
>   up partially constructed pipelines on failure.
>
> Thanks for taking a look. Feedback is welcome.

I did not do detailed review, but

Acked-by: Jani Nikula <[email protected]>

for merging via drm-misc.

Please coordinate with drm and drm-misc maintainers on which branch
these should merged through. IIUC there are memory leak fixes for
changes heading to v6.19, which speaks for drm-misc-fixes. But is it too
much at this stage? Up to drm and drm-misc maintainers I think.

BR,
Jani.


>
> [1] 
> https://lore.kernel.org/dri-devel/[email protected]/
> [2] 
> https://lore.kernel.org/intel-gfx/[email protected]/
>
> v2:
>  - Re-arrange patches (Alex)
>  - Re-factor code to avoid repitition in pipeline creation (Suraj)
>
> v3:
>  - Add documentation only to function definition (Jani)
>  - s/nvl/xe3plpd (Suraj)
>
> Chaitanya Kumar Borah (13):
>   drm/i915/color: Place 3D LUT after CSC in plane color pipeline
>   drm/amd/display: Fix color pipeline enum name leak
>   drm/vkms: Fix color pipeline enum name leak
>   drm/i915/display: Fix color pipeline enum name leak
>   drm/colorop: Add destroy helper for colorop objects
>   drm: Allow driver-managed destruction of colorop objects
>   drm/amd/display: Hook up colorop destroy helper for plane pipelines
>   drm/vkms: Hook up colorop destroy helper for plane pipelines
>   drm/i915/display: Hook up intel_colorop_destroy
>   drm: Clean up colorop objects during mode_config cleanup
>   drm/vkms: Remove drm_colorop_pipeline_destroy() from vkms_destroy()
>   drm/colorop: Use destroy callback for color pipeline teardown
>   drm/i915/color: Add failure handling in plane color pipeline init
>
>  .../amd/display/amdgpu_dm/amdgpu_dm_colorop.c |  31 ++-
>  .../amd/display/amdgpu_dm/amdgpu_dm_plane.c   |  13 +-
>  drivers/gpu/drm/drm_colorop.c                 |  49 +++--
>  drivers/gpu/drm/drm_mode_config.c             |   6 +
>  .../drm/i915/display/intel_color_pipeline.c   | 179 +++++++++++++-----
>  drivers/gpu/drm/i915/display/intel_colorop.c  |   6 +
>  drivers/gpu/drm/i915/display/intel_colorop.h  |   1 +
>  drivers/gpu/drm/vkms/vkms_colorop.c           |  31 +--
>  drivers/gpu/drm/vkms/vkms_drv.c               |   1 -
>  include/drm/drm_colorop.h                     |  32 +++-
>  10 files changed, 259 insertions(+), 90 deletions(-)

-- 
Jani Nikula, Intel

Reply via email to