2024-01-23 11:18:13

by Mickaël Salaün

[permalink] [raw]
Subject: Re: [PATCH] selftests/landlock:Fix net_test build issues with old libc

Thanks, I tweaked a bit and merged this patch in my next branch.

On Tue, Jan 23, 2024 at 02:26:21PM +0800, Hu Yadi wrote:
> From: "Hu.Yadi" <[email protected]>

There is an extra "." here, I fixed it. You don't need to add this From
field if it matches your email's From one.

>
> Fixes: a549d055a22e ("selftests/landlock: Add network tests")
>
> one issues comes up while building selftest/landlock/net_test on my side
> (gcc 7.3/glibc-2.28/kernel-4.19)
>
> net_test.c: In function ‘set_service’:
> net_test.c:91:45: warning: implicit declaration of function ‘gettid’; [-Wimplicit-function-declaration]
> "_selftests-landlock-net-tid%d-index%d", gettid(),
> ^~~~~~
> getgid
> net_test.c:(.text+0x4e0): undefined reference to `gettid'
>
> Signed-off-by: Hu Yadi <[email protected]>
> Suggested-by: Jiao <[email protected]>
> Reviewed-by: Berlin <[email protected]>
> ---
> tools/testing/selftests/landlock/net_test.c | 10 ++++++++--
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/tools/testing/selftests/landlock/net_test.c b/tools/testing/selftests/landlock/net_test.c
> index 929e21c4db05..6cc1bb1a9166 100644
> --- a/tools/testing/selftests/landlock/net_test.c
> +++ b/tools/testing/selftests/landlock/net_test.c
> @@ -18,9 +18,15 @@
> #include <sys/prctl.h>
> #include <sys/socket.h>
> #include <sys/un.h>
> -
> +#include <sys/syscall.h>
> #include "common.h"
>
> +
> +static pid_t sys_gettid(void)
> +{
> + return syscall(__NR_gettid);
> +}
> +
> const short sock_port_start = (1 << 10);
>
> static const char loopback_ipv4[] = "127.0.0.1";
> @@ -88,7 +94,7 @@ static int set_service(struct service_fixture *const srv,
> case AF_UNIX:
> srv->unix_addr.sun_family = prot.domain;
> sprintf(srv->unix_addr.sun_path,
> - "_selftests-landlock-net-tid%d-index%d", gettid(),
> + "_selftests-landlock-net-tid%d-index%d", sys_gettid(),
> index);
> srv->unix_addr_len = SUN_LEN(&srv->unix_addr);
> srv->unix_addr.sun_path[0] = '\0';
> --
> 2.23.0
>
>