Re: [PATCH] selftests/sigaltstack: Fix ppc64 GCC build

2024-07-06 Thread Michael Ellerman
On Mon, 20 May 2024 16:26:47 +1000, Michael Ellerman wrote:
> 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 ||
> | ^~
> 
> [...]

Applied to powerpc/next.

[1/1] selftests/sigaltstack: Fix ppc64 GCC build
  https://git.kernel.org/powerpc/c/17c743b9da9e0d073ff19fd5313f521744514939

cheers


[PATCH] selftests/sigaltstack: Fix ppc64 GCC build

2024-05-19 Thread Michael Ellerman
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: 05107edc9101 ("selftests: sigaltstack: fix -Wuninitialized")
Cc: sta...@vger.kernel.org # v6.3+
Signed-off-by: Michael Ellerman 
---
 tools/testing/selftests/sigaltstack/current_stack_pointer.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

I'll plan to merge this via the powerpc tree unless anyone objects.

diff --git a/tools/testing/selftests/sigaltstack/current_stack_pointer.h 
b/tools/testing/selftests/sigaltstack/current_stack_pointer.h
index ea9bdf3a90b1..09da8f1011ce 100644
--- a/tools/testing/selftests/sigaltstack/current_stack_pointer.h
+++ b/tools/testing/selftests/sigaltstack/current_stack_pointer.h
@@ -8,7 +8,7 @@ register unsigned long sp asm("sp");
 register unsigned long sp asm("esp");
 #elif __loongarch64
 register unsigned long sp asm("$sp");
-#elif __ppc__
+#elif __powerpc__
 register unsigned long sp asm("r1");
 #elif __s390x__
 register unsigned long sp asm("%15");
-- 
2.45.1