[LTP] [PATCH v2 2/2] syscalls/pidfd_open*.c: Drop .min_kver flag
Xiao Yang
yangx.jy@cn.fujitsu.com
Wed May 13 03:26:26 CEST 2020
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>
---
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);
+}
+
static struct tst_test test = {
- .min_kver = "5.3",
+ .setup = setup,
.test_all = run,
.forks_child = 1,
.needs_checkpoints = 1,
--
2.21.0
More information about the ltp
mailing list