Skip to content

Commit 17c743b

Browse files
committed
selftests/sigaltstack: Fix ppc64 GCC build
Building the sigaltstack test with GCC on 64-bit powerpc errors with: gcc -Wall sas.c -o /home/michael/linux/.build/kselftest/sigaltstack/sas In file included from sas.c:23: current_stack_pointer.h:22:2: error: #error "implement current_stack_pointer equivalent" 22 | #error "implement current_stack_pointer equivalent" | ^~~~~ sas.c: In function ‘my_usr1’: sas.c:50:13: error: ‘sp’ undeclared (first use in this function); did you mean ‘p’? 50 | if (sp < (unsigned long)sstack || | ^~ This happens because GCC doesn't define __ppc__ for 64-bit builds, only 32-bit builds. Instead use __powerpc__ to detect powerpc builds, which is defined by clang and GCC for 64-bit and 32-bit builds. Fixes: 05107ed ("selftests: sigaltstack: fix -Wuninitialized") Cc: stable@vger.kernel.org # v6.3+ Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://msgid.link/20240520062647.688667-1-mpe@ellerman.id.au
1 parent 7bdd1c6 commit 17c743b

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

tools/testing/selftests/sigaltstack/current_stack_pointer.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ register unsigned long sp asm("sp");
88
register unsigned long sp asm("esp");
99
#elif __loongarch64
1010
register unsigned long sp asm("$sp");
11-
#elif __ppc__
11+
#elif __powerpc__
1212
register unsigned long sp asm("r1");
1313
#elif __s390x__
1414
register unsigned long sp asm("%15");

0 commit comments

Comments
 (0)