Hi Nicholas, I love your patch! Yet something to improve: [auto build test ERROR on powerpc/next] [also build test ERROR on v5.14-rc7 next-20210826] [cannot apply to scottwood/next] [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] url: https://github.com/0day-ci/linux/commits/Nicholas-Piggin/powerpc-64s-interrupt-speedups/20210825-204209 base: https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git next config: powerpc-allnoconfig (attached as .config) compiler: powerpc-linux-gcc (GCC) 11.2.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 # https://github.com/0day-ci/linux/commit/a0eb195f49a01ed45b3f97815470f9c8acaa4991 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Nicholas-Piggin/powerpc-64s-interrupt-speedups/20210825-204209 git checkout a0eb195f49a01ed45b3f97815470f9c8acaa4991 # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=powerpc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): arch/powerpc/kernel/irq.c: In function '__do_irq': >> arch/powerpc/kernel/irq.c:742:13: error: implicit declaration of function 'should_hard_irq_enable'; did you mean 'do_hard_irq_enable'? [-Werror=implicit-function-declaration] 742 | if (should_hard_irq_enable()) | ^~~~~~~~~~~~~~~~~~~~~~ | do_hard_irq_enable In file included from : In function 'do_hard_irq_enable', inlined from '__do_irq' at arch/powerpc/kernel/irq.c:743:3: >> include/linux/compiler_types.h:328:45: error: call to '__compiletime_assert_34' declared with attribute error: BUILD_BUG failed 328 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^ include/linux/compiler_types.h:309:25: note: in definition of macro '__compiletime_assert' 309 | prefix ## suffix(); \ | ^~~~~~ include/linux/compiler_types.h:328:9: note: in expansion of macro '_compiletime_assert' 328 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert' 39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg) | ^~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:59:21: note: in expansion of macro 'BUILD_BUG_ON_MSG' 59 | #define BUILD_BUG() BUILD_BUG_ON_MSG(1, "BUILD_BUG failed") | ^~~~~~~~~~~~~~~~ arch/powerpc/include/asm/hw_irq.h:447:9: note: in expansion of macro 'BUILD_BUG' 447 | BUILD_BUG(); | ^~~~~~~~~ cc1: all warnings being treated as errors -- arch/powerpc/kernel/time.c: In function '____timer_interrupt': >> arch/powerpc/kernel/time.c:570:13: error: implicit declaration of function 'should_hard_irq_enable'; did you mean 'do_hard_irq_enable'? [-Werror=implicit-function-declaration] 570 | if (should_hard_irq_enable()) { | ^~~~~~~~~~~~~~~~~~~~~~ | do_hard_irq_enable In file included from : In function 'do_hard_irq_enable', inlined from '____timer_interrupt' at arch/powerpc/kernel/time.c:584:3, inlined from 'timer_interrupt' at arch/powerpc/kernel/time.c:553:1: >> include/linux/compiler_types.h:328:45: error: call to '__compiletime_assert_34' declared with attribute error: BUILD_BUG failed 328 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^ include/linux/compiler_types.h:309:25: note: in definition of macro '__compiletime_assert' 309 | prefix ## suffix(); \ | ^~~~~~ include/linux/compiler_types.h:328:9: note: in expansion of macro '_compiletime_assert' 328 | _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) | ^~~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert' 39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg) | ^~~~~~~~~~~~~~~~~~ include/linux/build_bug.h:59:21: note: in expansion of macro 'BUILD_BUG_ON_MSG' 59 | #define BUILD_BUG() BUILD_BUG_ON_MSG(1, "BUILD_BUG failed") | ^~~~~~~~~~~~~~~~ arch/powerpc/include/asm/hw_irq.h:447:9: note: in expansion of macro 'BUILD_BUG' 447 | BUILD_BUG(); | ^~~~~~~~~ cc1: all warnings being treated as errors vim +742 arch/powerpc/kernel/irq.c 727 728 void __do_irq(struct pt_regs *regs) 729 { 730 unsigned int irq; 731 732 trace_irq_entry(regs); 733 734 /* 735 * Query the platform PIC for the interrupt & ack it. 736 * 737 * This will typically lower the interrupt line to the CPU 738 */ 739 irq = ppc_md.get_irq(); 740 741 /* We can hard enable interrupts now to allow perf interrupts */ > 742 if (should_hard_irq_enable()) 743 do_hard_irq_enable(); 744 745 /* And finally process it */ 746 if (unlikely(!irq)) 747 __this_cpu_inc(irq_stat.spurious_irqs); 748 else 749 generic_handle_irq(irq); 750 751 trace_irq_exit(regs); 752 } 753 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org