Hi Jani, kernel test robot noticed the following build errors:
[auto build test ERROR on drm-misc/drm-misc-next] [also build test ERROR on drm-i915/for-linux-next drm-i915/for-linux-next-fixes drm-tip/drm-tip linus/master v6.19-rc1 next-20251219] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Jani-Nikula/drm-atomic-convert-drm_atomic_get_-old-new-_colorop_state-into-proper-functions/20251218-221750 base: https://gitlab.freedesktop.org/drm/misc/kernel.git drm-misc-next patch link: https://lore.kernel.org/r/20251218141527.405328-1-jani.nikula%40intel.com patch subject: [PATCH] drm/atomic: convert drm_atomic_get_{old, new}_colorop_state() into proper functions config: x86_64-rhel-9.4 (https://download.01.org/0day-ci/archive/20251221/[email protected]/config) compiler: gcc-14 (Debian 14.2.0-19) 14.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251221/[email protected]/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All errors (new ones prefixed by >>): drivers/gpu/drm/vkms/vkms_drv.c: In function 'vkms_destroy': >> drivers/gpu/drm/vkms/vkms_drv.c:261:9: error: implicit declaration of >> function 'drm_colorop_pipeline_destroy' [-Wimplicit-function-declaration] 261 | drm_colorop_pipeline_destroy(&config->dev->drm); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- drivers/gpu/drm/vkms/vkms_composer.c: In function 'apply_colorop': >> drivers/gpu/drm/vkms/vkms_composer.c:164:58: error: invalid use of undefined >> type 'struct drm_colorop' 164 | struct drm_colorop_state *colorop_state = colorop->state; | ^~ drivers/gpu/drm/vkms/vkms_composer.c:165:41: error: invalid use of undefined type 'struct drm_colorop' 165 | struct drm_device *dev = colorop->dev; | ^~ drivers/gpu/drm/vkms/vkms_composer.c:167:20: error: invalid use of undefined type 'struct drm_colorop' 167 | if (colorop->type == DRM_COLOROP_1D_CURVE) { | ^~ >> drivers/gpu/drm/vkms/vkms_composer.c:168:38: error: invalid use of undefined >> type 'struct drm_colorop_state' 168 | switch (colorop_state->curve_1d_type) { | ^~ >> drivers/gpu/drm/vkms/vkms_composer.c:169:22: error: >> 'DRM_COLOROP_1D_CURVE_SRGB_INV_EOTF' undeclared (first use in this function) 169 | case DRM_COLOROP_1D_CURVE_SRGB_INV_EOTF: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/vkms/vkms_composer.c:169:22: note: each undeclared identifier is reported only once for each function it appears in >> drivers/gpu/drm/vkms/vkms_composer.c:174:22: error: >> 'DRM_COLOROP_1D_CURVE_SRGB_EOTF' undeclared (first use in this function); >> did you mean 'DRM_COLOROP_1D_CURVE'? 174 | case DRM_COLOROP_1D_CURVE_SRGB_EOTF: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | DRM_COLOROP_1D_CURVE In file included from arch/x86/include/asm/alternative.h:9, from arch/x86/include/asm/nospec-branch.h:10, from arch/x86/include/asm/irqflags.h:9, from include/linux/irqflags.h:18, from include/linux/spinlock.h:59, from include/drm/drm_crtc.h:28, from include/drm/drm_atomic.h:31, from drivers/gpu/drm/vkms/vkms_composer.c:5: drivers/gpu/drm/vkms/vkms_composer.c:182:52: error: invalid use of undefined type 'struct drm_colorop_state' 182 | colorop_state->curve_1d_type); | ^~ arch/x86/include/asm/bug.h:175:74: note: in definition of macro '__WARN_print_arg' 175 | static_call_mod(WARN_trap)(__WARN_bug_entry(__flags, format), ## arg); \ | ^~~ include/drm/drm_print.h:784:9: note: in expansion of macro 'WARN_ONCE' 784 | WARN_ONCE(condition, "%s %s: [drm] " format, \ | ^~~~~~~~~ drivers/gpu/drm/vkms/vkms_composer.c:180:25: note: in expansion of macro 'drm_WARN_ONCE' 180 | drm_WARN_ONCE(dev, true, | ^~~~~~~~~~~~~ drivers/gpu/drm/vkms/vkms_composer.c:185:27: error: invalid use of undefined type 'struct drm_colorop' 185 | } else if (colorop->type == DRM_COLOROP_CTM_3X4) { | ^~ drivers/gpu/drm/vkms/vkms_composer.c:186:34: error: invalid use of undefined type 'struct drm_colorop_state' 186 | if (colorop_state->data) | ^~ drivers/gpu/drm/vkms/vkms_composer.c:188:83: error: invalid use of undefined type 'struct drm_colorop_state' 188 | (struct drm_color_ctm_3x4 *)colorop_state->data->data); | ^~ drivers/gpu/drm/vkms/vkms_composer.c: In function 'pre_blend_color_transform': drivers/gpu/drm/vkms/vkms_composer.c:218:48: error: invalid use of undefined type 'struct drm_colorop' 218 | colorop_state = colorop->state; | ^~ drivers/gpu/drm/vkms/vkms_composer.c:223:43: error: invalid use of undefined type 'struct drm_colorop_state' 223 | if (!colorop_state->bypass) | ^~ drivers/gpu/drm/vkms/vkms_composer.c:226:42: error: invalid use of undefined type 'struct drm_colorop' 226 | colorop = colorop->next; | ^~ vim +164 drivers/gpu/drm/vkms/vkms_composer.c ea3f6baf3196c3 Harry Wentland 2025-11-14 161 bff4d3cd3c9fcd Harry Wentland 2025-11-14 162 static void apply_colorop(struct pixel_argb_s32 *pixel, struct drm_colorop *colorop) c1e578bd08da79 Harry Wentland 2025-11-14 163 { c1e578bd08da79 Harry Wentland 2025-11-14 @164 struct drm_colorop_state *colorop_state = colorop->state; c1e578bd08da79 Harry Wentland 2025-11-14 165 struct drm_device *dev = colorop->dev; c1e578bd08da79 Harry Wentland 2025-11-14 166 c1e578bd08da79 Harry Wentland 2025-11-14 167 if (colorop->type == DRM_COLOROP_1D_CURVE) { c1e578bd08da79 Harry Wentland 2025-11-14 @168 switch (colorop_state->curve_1d_type) { c1e578bd08da79 Harry Wentland 2025-11-14 @169 case DRM_COLOROP_1D_CURVE_SRGB_INV_EOTF: c1e578bd08da79 Harry Wentland 2025-11-14 170 pixel->r = apply_lut_to_channel_value(&srgb_inv_eotf, pixel->r, LUT_RED); c1e578bd08da79 Harry Wentland 2025-11-14 171 pixel->g = apply_lut_to_channel_value(&srgb_inv_eotf, pixel->g, LUT_GREEN); c1e578bd08da79 Harry Wentland 2025-11-14 172 pixel->b = apply_lut_to_channel_value(&srgb_inv_eotf, pixel->b, LUT_BLUE); c1e578bd08da79 Harry Wentland 2025-11-14 173 break; c1e578bd08da79 Harry Wentland 2025-11-14 @174 case DRM_COLOROP_1D_CURVE_SRGB_EOTF: c1e578bd08da79 Harry Wentland 2025-11-14 175 pixel->r = apply_lut_to_channel_value(&srgb_eotf, pixel->r, LUT_RED); c1e578bd08da79 Harry Wentland 2025-11-14 176 pixel->g = apply_lut_to_channel_value(&srgb_eotf, pixel->g, LUT_GREEN); c1e578bd08da79 Harry Wentland 2025-11-14 177 pixel->b = apply_lut_to_channel_value(&srgb_eotf, pixel->b, LUT_BLUE); c1e578bd08da79 Harry Wentland 2025-11-14 178 break; c1e578bd08da79 Harry Wentland 2025-11-14 179 default: c1e578bd08da79 Harry Wentland 2025-11-14 180 drm_WARN_ONCE(dev, true, c1e578bd08da79 Harry Wentland 2025-11-14 181 "unknown colorop 1D curve type %d\n", c1e578bd08da79 Harry Wentland 2025-11-14 182 colorop_state->curve_1d_type); c1e578bd08da79 Harry Wentland 2025-11-14 183 break; c1e578bd08da79 Harry Wentland 2025-11-14 184 } ea3f6baf3196c3 Harry Wentland 2025-11-14 185 } else if (colorop->type == DRM_COLOROP_CTM_3X4) { ea3f6baf3196c3 Harry Wentland 2025-11-14 186 if (colorop_state->data) ea3f6baf3196c3 Harry Wentland 2025-11-14 187 apply_3x4_matrix(pixel, ea3f6baf3196c3 Harry Wentland 2025-11-14 188 (struct drm_color_ctm_3x4 *)colorop_state->data->data); c1e578bd08da79 Harry Wentland 2025-11-14 189 } c1e578bd08da79 Harry Wentland 2025-11-14 190 } c1e578bd08da79 Harry Wentland 2025-11-14 191 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
