selftests: riscv: Fix compilation error with vstate_exec_nolibc.c

Message ID 20230713115829.110421-1-alexghiti@rivosinc.com
State New
Headers
Series selftests: riscv: Fix compilation error with vstate_exec_nolibc.c |

Commit Message

Alexandre Ghiti July 13, 2023, 11:58 a.m. UTC
  The following error happens:

In file included from vstate_exec_nolibc.c:2:
/usr/include/riscv64-linux-gnu/sys/prctl.h:42:12: error: conflicting types for ‘prctl’; h
ave ‘int(int, ...)’
   42 | extern int prctl (int __option, ...) __THROW;
      |            ^~~~~
In file included from ./../../../../include/nolibc/nolibc.h:99,
                 from <command-line>:
./../../../../include/nolibc/sys.h:892:5: note: previous definition of ‘prctl’ with type
‘int(int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)
’
  892 | int prctl(int option, unsigned long arg2, unsigned long arg3,
      |     ^~~~~

Fix this by not including <sys/prctl.h>, which is not needed here since
prctl syscall is directly called using its number.

Fixes: 7cf6198ce22d ("selftests: Test RISC-V Vector prctl interface")
Signed-off-by: Alexandre Ghiti <alexghiti@rivosinc.com>
---
 tools/testing/selftests/riscv/vector/vstate_exec_nolibc.c | 2 --
 1 file changed, 2 deletions(-)
  

Comments

Palmer Dabbelt Aug. 3, 2023, 2:45 p.m. UTC | #1
On Thu, 13 Jul 2023 13:58:29 +0200, Alexandre Ghiti wrote:
> The following error happens:
> 
> In file included from vstate_exec_nolibc.c:2:
> /usr/include/riscv64-linux-gnu/sys/prctl.h:42:12: error: conflicting types for ‘prctl’; h
> ave ‘int(int, ...)’
>    42 | extern int prctl (int __option, ...) __THROW;
>       |            ^~~~~
> In file included from ./../../../../include/nolibc/nolibc.h:99,
>                  from <command-line>:
> ./../../../../include/nolibc/sys.h:892:5: note: previous definition of ‘prctl’ with type
> ‘int(int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)
> ’
>   892 | int prctl(int option, unsigned long arg2, unsigned long arg3,
>       |     ^~~~~
> 
> [...]

Applied, thanks!

[1/1] selftests: riscv: Fix compilation error with vstate_exec_nolibc.c
      https://git.kernel.org/palmer/c/25696067202f

Best regards,
  
patchwork-bot+linux-riscv@kernel.org Aug. 3, 2023, 3:10 p.m. UTC | #2
Hello:

This patch was applied to riscv/linux.git (fixes)
by Palmer Dabbelt <palmer@rivosinc.com>:

On Thu, 13 Jul 2023 13:58:29 +0200 you wrote:
> The following error happens:
> 
> In file included from vstate_exec_nolibc.c:2:
> /usr/include/riscv64-linux-gnu/sys/prctl.h:42:12: error: conflicting types for ‘prctl’; h
> ave ‘int(int, ...)’
>    42 | extern int prctl (int __option, ...) __THROW;
>       |            ^~~~~
> In file included from ./../../../../include/nolibc/nolibc.h:99,
>                  from <command-line>:
> ./../../../../include/nolibc/sys.h:892:5: note: previous definition of ‘prctl’ with type
> ‘int(int,  long unsigned int,  long unsigned int,  long unsigned int,  long unsigned int)
> ’
>   892 | int prctl(int option, unsigned long arg2, unsigned long arg3,
>       |     ^~~~~
> 
> [...]

Here is the summary with links:
  - selftests: riscv: Fix compilation error with vstate_exec_nolibc.c
    https://git.kernel.org/riscv/c/25696067202f

You are awesome, thank you!
  

Patch

diff --git a/tools/testing/selftests/riscv/vector/vstate_exec_nolibc.c b/tools/testing/selftests/riscv/vector/vstate_exec_nolibc.c
index 5cbc392944a6..2c0d2b1126c1 100644
--- a/tools/testing/selftests/riscv/vector/vstate_exec_nolibc.c
+++ b/tools/testing/selftests/riscv/vector/vstate_exec_nolibc.c
@@ -1,6 +1,4 @@ 
 // SPDX-License-Identifier: GPL-2.0-only
-#include <sys/prctl.h>
-
 #define THIS_PROGRAM "./vstate_exec_nolibc"
 
 int main(int argc, char **argv)