Skip to content

Commit eed5fae

Browse files
chleroympe
authored andcommitted
powerpc: Force inlining of cpu_has_feature() to avoid build failure
The code relies on constant folding of cpu_has_feature() based on possible and always true values as defined per CPU_FTRS_ALWAYS and CPU_FTRS_POSSIBLE. Build failure is encountered with for instance book3e_all_defconfig on kisskb in the AMDGPU driver which uses cpu_has_feature(CPU_FTR_VSX_COMP) to decide whether calling kernel_enable_vsx() or not. The failure is due to cpu_has_feature() not being inlined with that configuration with gcc 4.9. In the same way as commit acdad8f ("powerpc: Force inlining of mmu_has_feature to fix build failure"), for inlining of cpu_has_feature(). Signed-off-by: Christophe Leroy <[email protected]> Signed-off-by: Michael Ellerman <[email protected]> Link: https://lore.kernel.org/r/b231dfa040ce4cc37f702f5c3a595fdeabfe0462.1615378209.git.christophe.leroy@csgroup.eu
1 parent 08c18b6 commit eed5fae

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

arch/powerpc/include/asm/cpu_has_feature.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#include <linux/bug.h>
88
#include <asm/cputable.h>
99

10-
static inline bool early_cpu_has_feature(unsigned long feature)
10+
static __always_inline bool early_cpu_has_feature(unsigned long feature)
1111
{
1212
return !!((CPU_FTRS_ALWAYS & feature) ||
1313
(CPU_FTRS_POSSIBLE & cur_cpu_spec->cpu_features & feature));
@@ -46,7 +46,7 @@ static __always_inline bool cpu_has_feature(unsigned long feature)
4646
return static_branch_likely(&cpu_feature_keys[i]);
4747
}
4848
#else
49-
static inline bool cpu_has_feature(unsigned long feature)
49+
static __always_inline bool cpu_has_feature(unsigned long feature)
5050
{
5151
return early_cpu_has_feature(feature);
5252
}

0 commit comments

Comments
 (0)