Skip to content

Commit 947d5d0

Browse files
seehearfeelchenhuacai
authored andcommitted
LoongArch: Fix build failure with GCC 15 (-std=gnu23)
Whenever I try to build the kernel with upcoming GCC 15 which defaults to -std=gnu23 I get a build failure: CC arch/loongarch/vdso/vgetcpu.o In file included from ./include/uapi/linux/posix_types.h:5, from ./include/uapi/linux/types.h:14, from ./include/linux/types.h:6, from ./include/linux/kasan-checks.h:5, from ./include/asm-generic/rwonce.h:26, from ./arch/loongarch/include/generated/asm/rwonce.h:1, from ./include/linux/compiler.h:317, from ./include/asm-generic/bug.h:5, from ./arch/loongarch/include/asm/bug.h:60, from ./include/linux/bug.h:5, from ./include/linux/mmdebug.h:5, from ./include/linux/mm.h:6, from ./arch/loongarch/include/asm/vdso.h:10, from arch/loongarch/vdso/vgetcpu.c:6: ./include/linux/stddef.h:11:9: error: expected identifier before 'false' 11 | false = 0, | ^~~~~ ./include/linux/types.h:35:33: error: two or more data types in declaration specifiers 35 | typedef _Bool bool; | ^~~~ ./include/linux/types.h:35:1: warning: useless type name in empty declaration 35 | typedef _Bool bool; | ^~~~~~~ The kernel builds explicitly with -std=gnu11 in top Makefile, but arch/loongarch/vdso does not use KBUILD_CFLAGS from the rest of the kernel, just add -std=gnu11 flag to arch/loongarch/vdso/Makefile. By the way, commit e8c0708 ("Kbuild: move to -std=gnu11") did a similar change for arch/arm64/kernel/vdso32/Makefile. Fixes: c6b99be ("LoongArch: Add VDSO and VSYSCALL support") Signed-off-by: Tiezhu Yang <[email protected]> Signed-off-by: Huacai Chen <[email protected]>
1 parent e67e0eb commit 947d5d0

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

arch/loongarch/vdso/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ ccflags-vdso := \
1919
cflags-vdso := $(ccflags-vdso) \
2020
-isystem $(shell $(CC) -print-file-name=include) \
2121
$(filter -W%,$(filter-out -Wa$(comma)%,$(KBUILD_CFLAGS))) \
22-
-O2 -g -fno-strict-aliasing -fno-common -fno-builtin \
22+
-std=gnu11 -O2 -g -fno-strict-aliasing -fno-common -fno-builtin \
2323
-fno-stack-protector -fno-jump-tables -DDISABLE_BRANCH_PROFILING \
2424
$(call cc-option, -fno-asynchronous-unwind-tables) \
2525
$(call cc-option, -fno-stack-protector)

0 commit comments

Comments
 (0)