Hi Frank, kernel test robot noticed the following build errors: [auto build test ERROR on 74741a050b79d31d8d2eeee12c77736596d0a6b2] url: https://github.com/intel-lab-lkp/linux/commits/Frank-Li/dt-bindings-hwmon-ti-tmp108-Add-nxp-p3t1085-compatible-string/20241112-013721 base: 74741a050b79d31d8d2eeee12c77736596d0a6b2 patch link: https://lore.kernel.org/r/20241111-p3t1085-v3-4-bff511550aad%40nxp.com patch subject: [PATCH v3 4/5] hwmon: tmp108: Add support for I3C device config: arc-randconfig-001-20241114 (https://download.01.org/0day-ci/archive/20241114/202411141530.qTxjCzf7-lkp@xxxxxxxxx/config) compiler: arceb-elf-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241114/202411141530.qTxjCzf7-lkp@xxxxxxxxx/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 <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202411141530.qTxjCzf7-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): In file included from include/linux/device/driver.h:21, from include/linux/device.h:32, from drivers/hwmon/tmp108.c:8: >> include/linux/module.h:131:49: error: redefinition of '__inittest' 131 | static inline initcall_t __maybe_unused __inittest(void) \ | ^~~~~~~~~~ include/linux/device/driver.h:262:1: note: in expansion of macro 'module_init' 262 | module_init(__driver##_init); \ | ^~~~~~~~~~~ include/linux/i3c/device.h:233:9: note: in expansion of macro 'module_driver' 233 | module_driver(__drv, i3c_driver_register, i3c_driver_unregister) | ^~~~~~~~~~~~~ drivers/hwmon/tmp108.c:473:1: note: in expansion of macro 'module_i3c_driver' 473 | module_i3c_driver(p3t1085_driver); | ^~~~~~~~~~~~~~~~~ include/linux/module.h:131:49: note: previous definition of '__inittest' with type 'int (*(void))(void)' 131 | static inline initcall_t __maybe_unused __inittest(void) \ | ^~~~~~~~~~ include/linux/device/driver.h:262:1: note: in expansion of macro 'module_init' 262 | module_init(__driver##_init); \ | ^~~~~~~~~~~ include/linux/i2c.h:965:9: note: in expansion of macro 'module_driver' 965 | module_driver(__i2c_driver, i2c_add_driver, \ | ^~~~~~~~~~~~~ drivers/hwmon/tmp108.c:444:1: note: in expansion of macro 'module_i2c_driver' 444 | module_i2c_driver(tmp108_driver); | ^~~~~~~~~~~~~~~~~ >> include/linux/module.h:133:13: error: redefinition of 'init_module' 133 | int init_module(void) __copy(initfn) \ | ^~~~~~~~~~~ include/linux/device/driver.h:262:1: note: in expansion of macro 'module_init' 262 | module_init(__driver##_init); \ | ^~~~~~~~~~~ include/linux/i3c/device.h:233:9: note: in expansion of macro 'module_driver' 233 | module_driver(__drv, i3c_driver_register, i3c_driver_unregister) | ^~~~~~~~~~~~~ drivers/hwmon/tmp108.c:473:1: note: in expansion of macro 'module_i3c_driver' 473 | module_i3c_driver(p3t1085_driver); | ^~~~~~~~~~~~~~~~~ include/linux/module.h:133:13: note: previous definition of 'init_module' with type 'int(void)' 133 | int init_module(void) __copy(initfn) \ | ^~~~~~~~~~~ include/linux/device/driver.h:262:1: note: in expansion of macro 'module_init' 262 | module_init(__driver##_init); \ | ^~~~~~~~~~~ include/linux/i2c.h:965:9: note: in expansion of macro 'module_driver' 965 | module_driver(__i2c_driver, i2c_add_driver, \ | ^~~~~~~~~~~~~ drivers/hwmon/tmp108.c:444:1: note: in expansion of macro 'module_i2c_driver' 444 | module_i2c_driver(tmp108_driver); | ^~~~~~~~~~~~~~~~~ >> include/linux/module.h:139:49: error: redefinition of '__exittest' 139 | static inline exitcall_t __maybe_unused __exittest(void) \ | ^~~~~~~~~~ include/linux/device/driver.h:267:1: note: in expansion of macro 'module_exit' 267 | module_exit(__driver##_exit); | ^~~~~~~~~~~ include/linux/i3c/device.h:233:9: note: in expansion of macro 'module_driver' 233 | module_driver(__drv, i3c_driver_register, i3c_driver_unregister) | ^~~~~~~~~~~~~ drivers/hwmon/tmp108.c:473:1: note: in expansion of macro 'module_i3c_driver' 473 | module_i3c_driver(p3t1085_driver); | ^~~~~~~~~~~~~~~~~ include/linux/module.h:139:49: note: previous definition of '__exittest' with type 'void (*(void))(void)' 139 | static inline exitcall_t __maybe_unused __exittest(void) \ | ^~~~~~~~~~ include/linux/device/driver.h:267:1: note: in expansion of macro 'module_exit' 267 | module_exit(__driver##_exit); | ^~~~~~~~~~~ include/linux/i2c.h:965:9: note: in expansion of macro 'module_driver' 965 | module_driver(__i2c_driver, i2c_add_driver, \ | ^~~~~~~~~~~~~ drivers/hwmon/tmp108.c:444:1: note: in expansion of macro 'module_i2c_driver' 444 | module_i2c_driver(tmp108_driver); | ^~~~~~~~~~~~~~~~~ >> include/linux/module.h:141:14: error: redefinition of 'cleanup_module' 141 | void cleanup_module(void) __copy(exitfn) \ | ^~~~~~~~~~~~~~ include/linux/device/driver.h:267:1: note: in expansion of macro 'module_exit' 267 | module_exit(__driver##_exit); | ^~~~~~~~~~~ include/linux/i3c/device.h:233:9: note: in expansion of macro 'module_driver' 233 | module_driver(__drv, i3c_driver_register, i3c_driver_unregister) | ^~~~~~~~~~~~~ drivers/hwmon/tmp108.c:473:1: note: in expansion of macro 'module_i3c_driver' 473 | module_i3c_driver(p3t1085_driver); | ^~~~~~~~~~~~~~~~~ include/linux/module.h:141:14: note: previous definition of 'cleanup_module' with type 'void(void)' 141 | void cleanup_module(void) __copy(exitfn) \ | ^~~~~~~~~~~~~~ include/linux/device/driver.h:267:1: note: in expansion of macro 'module_exit' 267 | module_exit(__driver##_exit); | ^~~~~~~~~~~ include/linux/i2c.h:965:9: note: in expansion of macro 'module_driver' 965 | module_driver(__i2c_driver, i2c_add_driver, \ | ^~~~~~~~~~~~~ drivers/hwmon/tmp108.c:444:1: note: in expansion of macro 'module_i2c_driver' 444 | module_i2c_driver(tmp108_driver); | ^~~~~~~~~~~~~~~~~ vim +/__inittest +131 include/linux/module.h 0fd972a7d91d6e1 Paul Gortmaker 2015-05-01 128 0fd972a7d91d6e1 Paul Gortmaker 2015-05-01 129 /* Each module must use one module_init(). */ 0fd972a7d91d6e1 Paul Gortmaker 2015-05-01 130 #define module_init(initfn) \ 1f318a8bafcfba9 Arnd Bergmann 2017-02-01 @131 static inline initcall_t __maybe_unused __inittest(void) \ 0fd972a7d91d6e1 Paul Gortmaker 2015-05-01 132 { return initfn; } \ cf68fffb66d60d9 Sami Tolvanen 2021-04-08 @133 int init_module(void) __copy(initfn) \ cf68fffb66d60d9 Sami Tolvanen 2021-04-08 134 __attribute__((alias(#initfn))); \ 92efda8eb15295a Sami Tolvanen 2022-09-08 135 ___ADDRESSABLE(init_module, __initdata); 0fd972a7d91d6e1 Paul Gortmaker 2015-05-01 136 0fd972a7d91d6e1 Paul Gortmaker 2015-05-01 137 /* This is only required if you want to be unloadable. */ 0fd972a7d91d6e1 Paul Gortmaker 2015-05-01 138 #define module_exit(exitfn) \ 1f318a8bafcfba9 Arnd Bergmann 2017-02-01 @139 static inline exitcall_t __maybe_unused __exittest(void) \ 0fd972a7d91d6e1 Paul Gortmaker 2015-05-01 140 { return exitfn; } \ cf68fffb66d60d9 Sami Tolvanen 2021-04-08 @141 void cleanup_module(void) __copy(exitfn) \ cf68fffb66d60d9 Sami Tolvanen 2021-04-08 142 __attribute__((alias(#exitfn))); \ 92efda8eb15295a Sami Tolvanen 2022-09-08 143 ___ADDRESSABLE(cleanup_module, __exitdata); 0fd972a7d91d6e1 Paul Gortmaker 2015-05-01 144 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki