• Christophe Leroy's avatar
    powerpc/time: Fix build failure due to do_hard_irq_enable() on PPC32 · 87b9d74f
    Christophe Leroy authored
    	  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()
    
    Fixes: 0faf20a1 ("powerpc/64s/interrupt: Don't enable MSR[EE] in irq handlers unless perf is in use")
    Signed-off-by: default avatarChristophe Leroy <christophe.leroy@csgroup.eu>
    Acked-by: default avatarNicholas Piggin <npiggin@gmail.com>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    Link: https://lore.kernel.org/r/247e01e0e10f4dbc59b5ff89e81702eb1ee7641e.1641828571.git.christophe.leroy@csgroup.eu
    87b9d74f
hw_irq.h 11.8 KB