Excerpts from Christophe Leroy's message of January 11, 2022 1:29 am: > CC arch/powerpc/kernel/time.o > In file included from <command-line>: > ./arch/powerpc/include/asm/hw_irq.h: In function 'do_hard_irq_enable': > ././include/linux/compiler_types.h:335:45: error: call to > '__compiletime_assert_35' declared with attribute error: BUILD_BUG failed > 335 | _compiletime_assert(condition, msg, > __compiletime_assert_, __COUNTER__) > | ^ > ././include/linux/compiler_types.h:316:25: note: in definition of macro > '__compiletime_assert' > 316 | prefix ## suffix(); > \ > | ^~~~~~ > ././include/linux/compiler_types.h:335:9: note: in expansion of macro > '_compiletime_assert' > 335 | _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:483:9: note: in expansion of macro > 'BUILD_BUG' > 483 | BUILD_BUG(); > | ^~~~~~~~~ > > should_hard_irq_enable() returns false on PPC32 so this BUILD_BUG() shouldn't > trigger. > > Force inlining of should_hard_irq_enable() > > Signed-off-by: Christophe Leroy <christophe.le...@csgroup.eu> > Fixes: 0faf20a1ad16 ("powerpc/64s/interrupt: Don't enable MSR[EE] in irq > handlers unless perf is in use") > Cc: Nicholas Piggin <npig...@gmail.com>
Acked-by: Nicholas Piggin <npig...@gmail.com> Thanks, Nick > --- > arch/powerpc/include/asm/hw_irq.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/powerpc/include/asm/hw_irq.h > b/arch/powerpc/include/asm/hw_irq.h > index a58fb4aa6c81..674e5aaafcbd 100644 > --- a/arch/powerpc/include/asm/hw_irq.h > +++ b/arch/powerpc/include/asm/hw_irq.h > @@ -473,7 +473,7 @@ static inline bool arch_irq_disabled_regs(struct pt_regs > *regs) > return !(regs->msr & MSR_EE); > } > > -static inline bool should_hard_irq_enable(void) > +static __always_inline bool should_hard_irq_enable(void) > { > return false; > } > -- > 2.33.1 >