On Mon, Jan 4, 2021 at 6:12 AM Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote: > After merging the staging tree, today's linux-next build (arm > multi_v7_defconfig) failed like this: > > In file included from include/linux/printk.h:6, > from include/linux/kernel.h:16, > from drivers/staging/board/kzm9d.c:4: > drivers/staging/board/kzm9d.c:28:17: error: initialization of 'initcall_t' {aka 'int (*)(void)'} from incompatible pointer type 'void (*)(void)' [-Werror=incompatible-pointer-types] > 28 | device_initcall(kzm9d_init); > | ^~~~~~~~~~ > include/linux/init.h:197:50: note: in definition of macro '___define_initcall' > 197 | __attribute__((__section__(#__sec ".init"))) = fn; > | ^~ > include/linux/init.h:229:30: note: in expansion of macro '__define_initcall' > 229 | #define device_initcall(fn) __define_initcall(fn, 6) > | ^~~~~~~~~~~~~~~~~ > drivers/staging/board/kzm9d.c:28:1: note: in expansion of macro 'device_initcall' > 28 | device_initcall(kzm9d_init); > | ^~~~~~~~~~~~~~~ > cc1: some warnings being treated as errors > In file included from include/linux/printk.h:6, > from include/linux/kernel.h:16, > from include/asm-generic/bug.h:20, > from arch/arm/include/asm/bug.h:60, > from include/linux/bug.h:5, > from include/linux/thread_info.h:12, > from include/asm-generic/current.h:5, > from ./arch/arm/include/generated/asm/current.h:1, > from include/linux/sched.h:12, > from include/linux/ratelimit.h:6, > from include/linux/dev_printk.h:16, > from include/linux/device.h:15, > from include/linux/dma-mapping.h:7, > from drivers/staging/board/armadillo800eva.c:12: > drivers/staging/board/armadillo800eva.c:90:17: error: initialization of 'initcall_t' {aka 'int (*)(void)'} from incompatible pointer type 'void (*)(void)' [-Werror=incompatible-pointer-types] > 90 | device_initcall(armadillo800eva_init); > | ^~~~~~~~~~~~~~~~~~~~ > include/linux/init.h:197:50: note: in definition of macro '___define_initcall' > 197 | __attribute__((__section__(#__sec ".init"))) = fn; > | ^~ > include/linux/init.h:229:30: note: in expansion of macro '__define_initcall' > 229 | #define device_initcall(fn) __define_initcall(fn, 6) > | ^~~~~~~~~~~~~~~~~ > drivers/staging/board/armadillo800eva.c:90:1: note: in expansion of macro 'device_initcall' > 90 | device_initcall(armadillo800eva_init); > | ^~~~~~~~~~~~~~~ > > Caused by commit > > 850c35bb28ec ("staging: board: Remove macro board_staging") > > I have used the staging tree from next-20201223 for today. Note that a similar patch was (IMHO rightfully) rejected 3 years ago: https://lore.kernel.org/lkml/20170220175506.GA30142@xxxxxxxxx/ So please drop it. Thanks! Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds