Subject: linux-next: build failure after merge of the kunit-next tree

From: Stephen Rothwell <[email-masked]>
Date: Mon, 18 Aug 2025 12:08:46 +1000

Hi all,

After merging the kunit-next tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from include/kunit/static_stub.h:18,
                 from drivers/gpu/drm/xe/xe_bo.c:20:
drivers/gpu/drm/xe/tests/xe_bo.c:610:48: error: initialization of 'const void * (*)(struct kunit *, const void *, char *)' from incompatible pointer type 'const void * (*)(const void *, char *)' [-Wincompatible-pointer-types]
  610 |         KUNIT_CASE_PARAM(xe_ccs_migrate_kunit, xe_pci_live_device_gen_param),
      |                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/kunit/test.h:210:38: note: in definition of macro 'KUNIT_CASE_PARAM'
  210 |                   .generate_params = gen_params, .module_name = KBUILD_MODNAME}
      |                                      ^~~~~~~~~~
drivers/gpu/drm/xe/tests/xe_bo.c:610:48: note: (near initialization for 'xe_bo_tests[0].generate_params')
  610 |         KUNIT_CASE_PARAM(xe_ccs_migrate_kunit, xe_pci_live_device_gen_param),
      |                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/kunit/test.h:210:38: note: in definition of macro 'KUNIT_CASE_PARAM'
  210 |                   .generate_params = gen_params, .module_name = KBUILD_MODNAME}
      |                                      ^~~~~~~~~~
drivers/gpu/drm/xe/tests/xe_bo.c:611:45: error: initialization of 'const void * (*)(struct kunit *, const void *, char *)' from incompatible pointer type 'const void * (*)(const void *, char *)' [-Wincompatible-pointer-types]
  611 |         KUNIT_CASE_PARAM(xe_bo_evict_kunit, xe_pci_live_device_gen_param),
      |                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/kunit/test.h:210:38: note: in definition of macro 'KUNIT_CASE_PARAM'
  210 |                   .generate_params = gen_params, .module_name = KBUILD_MODNAME}
      |                                      ^~~~~~~~~~
drivers/gpu/drm/xe/tests/xe_bo.c:611:45: note: (near initialization for 'xe_bo_tests[1].generate_params')
  611 |         KUNIT_CASE_PARAM(xe_bo_evict_kunit, xe_pci_live_device_gen_param),
      |                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/kunit/test.h:210:38: note: in definition of macro 'KUNIT_CASE_PARAM'
  210 |                   .generate_params = gen_params, .module_name = KBUILD_MODNAME}
      |                                      ^~~~~~~~~~
drivers/gpu/drm/xe/tests/xe_bo.c:624:51: error: initialization of 'const void * (*)(struct kunit *, const void *, char *)' from incompatible pointer type 'const void * (*)(const void *, char *)' [-Wincompatible-pointer-types]
  624 |         KUNIT_CASE_PARAM_ATTR(xe_bo_shrink_kunit, xe_pci_live_device_gen_param,
      |                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/kunit/test.h:223:38: note: in definition of macro 'KUNIT_CASE_PARAM_ATTR'
  223 |                   .generate_params = gen_params,                                \
      |                                      ^~~~~~~~~~
drivers/gpu/drm/xe/tests/xe_bo.c:624:51: note: (near initialization for 'xe_bo_shrink_test[0].generate_params')
  624 |         KUNIT_CASE_PARAM_ATTR(xe_bo_shrink_kunit, xe_pci_live_device_gen_param,
      |                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/kunit/test.h:223:38: note: in definition of macro 'KUNIT_CASE_PARAM_ATTR'
  223 |                   .generate_params = gen_params,                                \
      |                                      ^~~~~~~~~~

Caused by commit

  444be9072fca ("kunit: Pass parameterized test context to generate_params()")

I have used the kunit-next tree from next-20250815 for today.

-- 
Cheers,
Stephen Rothwell