Hi Herbert, I love your patch! Yet something to improve: [auto build test ERROR on linus/master] [also build test ERROR on pmladek/for-next linux/master v5.7 next-20200611] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982] url: https://github.com/0day-ci/linux/commits/Herbert-Xu/printk-Make-linux-printk-h-self-contained/20200611-205340 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git b29482fde649c72441d5478a4ea2c52c56d97a5e config: powerpc64-randconfig-r013-20200611 (attached as .config) compiler: powerpc-linux-gcc (GCC) 9.3.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All error/warnings (new ones prefixed by >>, old ones prefixed by <<): WARNING: unmet direct dependencies detected for HOTPLUG_CPU Depends on SMP && (PPC_PSERIES || PPC_PMAC || PPC_POWERNV || FSL_SOC_BOOKE Selected by - PM_SLEEP_SMP && SMP && (ARCH_SUSPEND_POSSIBLE || ARCH_HIBERNATION_POSSIBLE && PM_SLEEP In file included from include/linux/bug.h:5, from include/linux/page-flags.h:10, from kernel/bounds.c:10: arch/powerpc/include/asm/page_32.h: In function 'clear_page': << from arch/powerpc/include/asm/bug.h:109, >> arch/powerpc/include/asm/bug.h:87:4: error: implicit declaration of function '__WARN' 87 | __WARN(); | ^~~~~~ >> arch/powerpc/include/asm/page_32.h:54:2: note: in expansion of macro 'WARN_ON' 54 | WARN_ON((unsigned long)addr & (L1_CACHE_BYTES - 1)); | ^~~~~~~ << from arch/powerpc/include/asm/bug.h:109, >> arch/powerpc/include/asm/bug.h:90:38: error: 'TAINT_WARN' undeclared (first use in this function) 90 | BUGFLAG_WARNING | BUGFLAG_TAINT(TAINT_WARN), | ^~~~~~~~~~ arch/powerpc/include/asm/bug.h:57:10: note: in definition of macro 'BUG_ENTRY' 57 | "i" (flags), | ^~~~~ << from arch/powerpc/include/asm/bug.h:109, >> arch/powerpc/include/asm/bug.h:90:24: note: in expansion of macro 'BUGFLAG_TAINT' 90 | BUGFLAG_WARNING | BUGFLAG_TAINT(TAINT_WARN), | ^~~~~~~~~~~~~ >> arch/powerpc/include/asm/page_32.h:54:2: note: in expansion of macro 'WARN_ON' 54 | WARN_ON((unsigned long)addr & (L1_CACHE_BYTES - 1)); | ^~~~~~~ arch/powerpc/include/asm/bug.h:90:38: note: each undeclared identifier is reported only once for each function it appears in 90 | BUGFLAG_WARNING | BUGFLAG_TAINT(TAINT_WARN), | ^~~~~~~~~~ arch/powerpc/include/asm/bug.h:57:10: note: in definition of macro 'BUG_ENTRY' 57 | "i" (flags), | ^~~~~ << from arch/powerpc/include/asm/bug.h:109, >> arch/powerpc/include/asm/bug.h:90:24: note: in expansion of macro 'BUGFLAG_TAINT' 90 | BUGFLAG_WARNING | BUGFLAG_TAINT(TAINT_WARN), | ^~~~~~~~~~~~~ >> arch/powerpc/include/asm/page_32.h:54:2: note: in expansion of macro 'WARN_ON' 54 | WARN_ON((unsigned long)addr & (L1_CACHE_BYTES - 1)); | ^~~~~~~ << from arch/powerpc/include/asm/bug.h:109, >> arch/powerpc/include/asm/bug.h:58:17: error: invalid application of 'sizeof' to incomplete type 'struct bug_entry' 58 | "i" (sizeof(struct bug_entry)), | ^~~~~~ << from arch/powerpc/include/asm/bug.h:109, >> arch/powerpc/include/asm/bug.h:89:3: note: in expansion of macro 'BUG_ENTRY' 89 | BUG_ENTRY(PPC_TLNEI " %4, 0", | ^~~~~~~~~ >> arch/powerpc/include/asm/page_32.h:54:2: note: in expansion of macro 'WARN_ON' 54 | WARN_ON((unsigned long)addr & (L1_CACHE_BYTES - 1)); | ^~~~~~~ In file included from arch/powerpc/include/asm/ptrace.h:253, from arch/powerpc/include/asm/hw_irq.h:12, from arch/powerpc/include/asm/irqflags.h:12, from include/linux/irqflags.h:16, from include/asm-generic/cmpxchg-local.h:6, from arch/powerpc/include/asm/cmpxchg.h:526, from arch/powerpc/include/asm/atomic.h:11, from include/linux/atomic.h:7, from include/linux/debug_locks.h:6, from include/linux/lockdep.h:44, from include/linux/spinlock_types.h:18, from include/linux/ratelimit_types.h:7, from include/linux/printk.h:10, from include/linux/kernel.h:15, from include/asm-generic/bug.h:19, from arch/powerpc/include/asm/bug.h:109, from include/linux/bug.h:5, from include/linux/page-flags.h:10, from kernel/bounds.c:10: include/linux/thread_info.h: In function 'copy_overflow': >> include/linux/thread_info.h:134:2: error: implicit declaration of function 'WARN' 134 | WARN(1, "Buffer overflow detected (%d < %lu)!n", size, count); | ^~~~ include/linux/thread_info.h: In function 'check_copy_size': >> include/linux/thread_info.h:150:6: error: implicit declaration of function 'WARN_ON_ONCE' 150 | if (WARN_ON_ONCE(bytes > INT_MAX)) | ^~~~~~~~~~~~ cc1: some warnings being treated as errors Makefile Module.symvers System.map arch block certs crypto drivers fs include init ipc kernel lib mm modules.builtin modules.builtin.modinfo modules.order net scripts security sound source usr virt vmlinux vmlinux-gdb.py vmlinux.o vmlinux.strip vmlinux.strip.gz vmlinux.symvers [scripts/Makefile.build:114: kernel/bounds.s] Error 1 Target '__build' not remade because of errors. Makefile Module.symvers System.map arch block certs crypto drivers fs include init ipc kernel lib mm modules.builtin modules.builtin.modinfo modules.order net scripts security sound source usr virt vmlinux vmlinux-gdb.py vmlinux.o vmlinux.strip vmlinux.strip.gz vmlinux.symvers [Makefile:1188: prepare0] Error 2 Target 'prepare' not remade because of errors. make: Makefile Module.symvers System.map arch block certs crypto drivers fs include init ipc kernel lib mm modules.builtin modules.builtin.modinfo modules.order net scripts security sound source usr virt vmlinux vmlinux-gdb.py vmlinux.o vmlinux.strip vmlinux.strip.gz vmlinux.symvers [Makefile:185: __sub-make] Error 2 vim +/__WARN +87 arch/powerpc/include/asm/bug.h 73c9ceab40b1269 include/asm-powerpc/bug.h Jeremy Fitzhardinge 2006-12-08 51 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 52 #define BUG_ENTRY(insn, flags, ...) \ 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 53 __asm__ __volatile__( \ 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 54 "1: " insn "\n" \ 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 55 _EMIT_BUG_ENTRY \ 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 56 : : "i" (__FILE__), "i" (__LINE__), \ 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 57 "i" (flags), \ 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 @58 "i" (sizeof(struct bug_entry)), \ 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 59 ##__VA_ARGS__) 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 60 e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 61 /* e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 62 * BUG_ON() and WARN_ON() do their best to cooperate with compile-time e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 63 * optimisations. However depending on the complexity of the condition e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 64 * some compiler versions may not produce optimal results. e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 65 */ e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 66 ^1da177e4c3f415 include/asm-ppc64/bug.h Linus Torvalds 2005-04-16 67 #define BUG() do { \ 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 68 BUG_ENTRY("twi 31, 0, 0", 0); \ 01ae45bcd48527e arch/powerpc/include/asm/bug.h David Daney 2009-12-10 69 unreachable(); \ ^1da177e4c3f415 include/asm-ppc64/bug.h Linus Torvalds 2005-04-16 70 } while (0) ^1da177e4c3f415 include/asm-ppc64/bug.h Linus Torvalds 2005-04-16 71 ^1da177e4c3f415 include/asm-ppc64/bug.h Linus Torvalds 2005-04-16 72 #define BUG_ON(x) do { \ e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 73 if (__builtin_constant_p(x)) { \ e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 74 if (x) \ e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 75 BUG(); \ e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 76 } else { \ 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 77 BUG_ENTRY(PPC_TLNEI " %4, 0", 0, "r" ((__force long)(x))); \ e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 78 } \ e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 79 } while (0) e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 80 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 81 #define __WARN_FLAGS(flags) BUG_ENTRY("twi 31, 0, 0", BUGFLAG_WARNING | (flags)) ^1da177e4c3f415 include/asm-ppc64/bug.h Linus Torvalds 2005-04-16 82 684f978347deb42 include/asm-powerpc/bug.h Herbert Xu 2006-09-29 83 #define WARN_ON(x) ({ \ 8d4fbcfbe0a4bfc include/asm-powerpc/bug.h Linus Torvalds 2007-07-31 84 int __ret_warn_on = !!(x); \ 684f978347deb42 include/asm-powerpc/bug.h Herbert Xu 2006-09-29 85 if (__builtin_constant_p(__ret_warn_on)) { \ 684f978347deb42 include/asm-powerpc/bug.h Herbert Xu 2006-09-29 86 if (__ret_warn_on) \ 872345b715ee02f include/asm-powerpc/bug.h Andrew Morton 2006-03-27 @87 __WARN(); \ e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 88 } else { \ 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 @89 BUG_ENTRY(PPC_TLNEI " %4, 0", \ 43f003bb74b9b27 arch/powerpc/include/asm/bug.h Christophe Leroy 2019-08-19 @90 BUGFLAG_WARNING | BUGFLAG_TAINT(TAINT_WARN), \ 73c9ceab40b1269 include/asm-powerpc/bug.h Jeremy Fitzhardinge 2006-12-08 91 "r" (__ret_warn_on)); \ e3f94b85f98a346 include/asm-powerpc/bug.h Michael Ellerman 2006-03-23 92 } \ 684f978347deb42 include/asm-powerpc/bug.h Herbert Xu 2006-09-29 93 unlikely(__ret_warn_on); \ 684f978347deb42 include/asm-powerpc/bug.h Herbert Xu 2006-09-29 94 }) ^1da177e4c3f415 include/asm-ppc64/bug.h Linus Torvalds 2005-04-16 95 :::::: The code at line 87 was first introduced by commit :::::: 872345b715ee02f3b45528449f0d11b44ef9ebb8 [PATCH] git-powerpc: WARN was a dumb idea :::::: TO: Andrew Morton :::::: CC: Paul Mackerras --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org