[LTP] [PATCH v2 2/2] syscalls/pidfd_open*.c: Drop .min_kver flag

Viresh Kumar viresh.kumar@linaro.org
Wed May 13 07:55:33 CEST 2020


On 13-05-20, 09:26, Xiao Yang wrote:
> 1) Drop .min_kver flag directly because of two following reasons:
>    a) pidfd_open(2) may be backported to old kernel which is less
>       than v5.3 so kernel version check is meaningless.
>    b) tst_syscall() can report TCONF if pidfd_open(2) is not supported.
> 2) For pidfd_open03.c, check if pidfd_open(2) is not supported before
>    calling fork().
> 
> Signed-off-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
> Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>

You can not apply someone's tag without them explicitly asking you to.

> ---
>  testcases/kernel/syscalls/pidfd_open/pidfd_open01.c |  1 -
>  testcases/kernel/syscalls/pidfd_open/pidfd_open02.c |  1 -
>  testcases/kernel/syscalls/pidfd_open/pidfd_open03.c | 12 +++++++++++-
>  3 files changed, 11 insertions(+), 3 deletions(-)
> 
> diff --git a/testcases/kernel/syscalls/pidfd_open/pidfd_open01.c b/testcases/kernel/syscalls/pidfd_open/pidfd_open01.c
> index ba1580bc7..6f5114f68 100644
> --- a/testcases/kernel/syscalls/pidfd_open/pidfd_open01.c
> +++ b/testcases/kernel/syscalls/pidfd_open/pidfd_open01.c
> @@ -29,6 +29,5 @@ static void run(void)
>  }
>  
>  static struct tst_test test = {
> -	.min_kver = "5.3",
>  	.test_all = run,
>  };
> diff --git a/testcases/kernel/syscalls/pidfd_open/pidfd_open02.c b/testcases/kernel/syscalls/pidfd_open/pidfd_open02.c
> index dc86cae7a..a7328ddfe 100644
> --- a/testcases/kernel/syscalls/pidfd_open/pidfd_open02.c
> +++ b/testcases/kernel/syscalls/pidfd_open/pidfd_open02.c
> @@ -51,7 +51,6 @@ static void run(unsigned int n)
>  }
>  
>  static struct tst_test test = {
> -	.min_kver = "5.3",
>  	.tcnt = ARRAY_SIZE(tcases),
>  	.test = run,
>  	.setup = setup,
> diff --git a/testcases/kernel/syscalls/pidfd_open/pidfd_open03.c b/testcases/kernel/syscalls/pidfd_open/pidfd_open03.c
> index 48470e5e1..9e27ee75e 100644
> --- a/testcases/kernel/syscalls/pidfd_open/pidfd_open03.c
> +++ b/testcases/kernel/syscalls/pidfd_open/pidfd_open03.c
> @@ -49,8 +49,18 @@ static void run(void)
>  		tst_res(TPASS, "pidfd_open() passed");
>  }
>  
> +static void setup(void)
> +{
> +	int pidfd = -1;
> +
> +	// Check if pidfd_open(2) is not supported
> +	pidfd = tst_syscall(__NR_pidfd_open, getpid(), 0);
> +	if (pidfd != -1)
> +		SAFE_CLOSE(pidfd);
> +}
> +

This only fixes the 3rd test, the other two will have an issue now.

>  static struct tst_test test = {
> -	.min_kver = "5.3",
> +	.setup = setup,
>  	.test_all = run,
>  	.forks_child = 1,
>  	.needs_checkpoints = 1,
> -- 
> 2.21.0
> 
> 

-- 
viresh


More information about the ltp mailing list