* [LTP] [PATCH v3] syscalls: consolidate getpid02 into getppid02
@ 2026-08-06 15:08 Jinseok Kim
2026-08-07 0:00 ` [LTP] " linuxtestproject.agent
0 siblings, 1 reply; 2+ messages in thread
From: Jinseok Kim @ 2026-08-06 15:08 UTC (permalink / raw)
To: ltp
Although named getpid02, the test verifies both getpid() and getppid()
across fork(). Reuse its broader coverage in getppid02 and remove the
duplicated getpid02 test.
While at it, rename proc_id to parent_pid for clarity and use
TST_EXP_EQ_LI() for PID comparisons.
Signed-off-by: Jinseok Kim <always.starving0@gmail.com>
---
Changes in v3:
- Rename proc_id to parent_pid for clarity.
- Use TST_EXP_EQ_LI() for PID comparisons.
- Link to v2: https://lore.kernel.org/ltp/20260729120820.5646-1-always.starving0@gmail.com
---
runtest/syscalls | 1 -
testcases/kernel/syscalls/getpid/.gitignore | 1 -
testcases/kernel/syscalls/getpid/getpid02.c | 67 -------------------
testcases/kernel/syscalls/getppid/getppid02.c | 43 ++++++++----
4 files changed, 31 insertions(+), 81 deletions(-)
delete mode 100644 testcases/kernel/syscalls/getpid/getpid02.c
diff --git a/runtest/syscalls b/runtest/syscalls
index a38743ded..62a33e3a6 100644
--- a/runtest/syscalls
+++ b/runtest/syscalls
@@ -517,7 +517,6 @@ getpgid02 getpgid02
getpgrp01 getpgrp01
getpid01 getpid01
-getpid02 getpid02
getppid01 getppid01
getppid02 getppid02
diff --git a/testcases/kernel/syscalls/getpid/.gitignore b/testcases/kernel/syscalls/getpid/.gitignore
index f44bc9eac..8e7ab0185 100644
--- a/testcases/kernel/syscalls/getpid/.gitignore
+++ b/testcases/kernel/syscalls/getpid/.gitignore
@@ -1,2 +1 @@
/getpid01
-/getpid02
diff --git a/testcases/kernel/syscalls/getpid/getpid02.c b/testcases/kernel/syscalls/getpid/getpid02.c
deleted file mode 100644
index 08fcd5337..000000000
--- a/testcases/kernel/syscalls/getpid/getpid02.c
+++ /dev/null
@@ -1,67 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-or-later
-/*
- * Copyright (c) International Business Machines Corp., 2001
- */
-
-/*\
- * Check that:
- *
- * - :manpage:`fork(2)` in parent returns the same pid as
- * :manpage:`getpid(2)` in child
- * - :manpage:`getppid(2)` in child returns the same pid as
- * :manpage:`getpid(2)` in parent
- */
-
-#include "tst_test.h"
-
-static pid_t *child_pid;
-
-static void verify_getpid(void)
-{
- pid_t proc_id;
- pid_t pid;
- pid_t pproc_id;
-
- proc_id = getpid();
- pid = SAFE_FORK();
-
- if (pid == 0) {
- pproc_id = getppid();
-
- if (pproc_id != proc_id) {
- tst_res(TFAIL, "child getppid() (%d) != parent getpid() (%d)",
- pproc_id, proc_id);
- } else {
- tst_res(TPASS, "child getppid() == parent getpid() (%d)", proc_id);
- }
-
- *child_pid = getpid();
-
- return;
- }
-
- tst_reap_children();
-
- if (*child_pid != pid)
- tst_res(TFAIL, "child getpid() (%d) != parent fork() (%d)", *child_pid, pid);
- else
- tst_res(TPASS, "child getpid() == parent fork() (%d)", pid);
-}
-
-static void setup(void)
-{
- child_pid = SAFE_MMAP(NULL, sizeof(pid_t), PROT_READ | PROT_WRITE,
- MAP_ANONYMOUS | MAP_SHARED, -1, 0);
-}
-
-static void cleanup(void)
-{
- SAFE_MUNMAP(child_pid, sizeof(pid_t));
-}
-
-static struct tst_test test = {
- .forks_child = 1,
- .setup = setup,
- .cleanup = cleanup,
- .test_all = verify_getpid,
-};
diff --git a/testcases/kernel/syscalls/getppid/getppid02.c b/testcases/kernel/syscalls/getppid/getppid02.c
index 7497eba12..b9c773e8d 100644
--- a/testcases/kernel/syscalls/getppid/getppid02.c
+++ b/testcases/kernel/syscalls/getppid/getppid02.c
@@ -4,33 +4,52 @@
*/
/*\
- * Check that getppid() in child returns the same pid as getpid() in parent.
+ * Check that:
+ *
+ * - :manpage:`fork(2)` in parent returns the same pid as
+ * :manpage:`getpid(2)` in child
+ * - :manpage:`getppid(2)` in child returns the same pid as
+ * :manpage:`getpid(2)` in parent
*/
-#include <errno.h>
-
#include "tst_test.h"
+static pid_t *child_pid;
+
static void verify_getppid(void)
{
- pid_t proc_id;
+ pid_t parent_pid;
pid_t pid;
- pid_t pproc_id;
- proc_id = getpid();
+ parent_pid = getpid();
pid = SAFE_FORK();
+
if (pid == 0) {
- pproc_id = getppid();
+ TST_EXP_EQ_LI(getppid(), parent_pid);
- if (pproc_id != proc_id)
- tst_res(TFAIL, "child's ppid(%d) not equal to parent's pid(%d)",
- pproc_id, proc_id);
- else
- tst_res(TPASS, "getppid() returned parent pid (%d)", proc_id);
+ *child_pid = getpid();
+ return;
}
+
+ tst_reap_children();
+
+ TST_EXP_EQ_LI(*child_pid, pid);
+}
+
+static void setup(void)
+{
+ child_pid = SAFE_MMAP(NULL, sizeof(pid_t), PROT_READ | PROT_WRITE,
+ MAP_ANONYMOUS | MAP_SHARED, -1, 0);
+}
+
+static void cleanup(void)
+{
+ SAFE_MUNMAP(child_pid, sizeof(pid_t));
}
static struct tst_test test = {
.forks_child = 1,
+ .setup = setup,
+ .cleanup = cleanup,
.test_all = verify_getppid,
};
--
2.43.0
--
Mailing list info: https://lists.linux.it/listinfo/ltp
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [LTP] syscalls: consolidate getpid02 into getppid02
2026-08-06 15:08 [LTP] [PATCH v3] syscalls: consolidate getpid02 into getppid02 Jinseok Kim
@ 2026-08-07 0:00 ` linuxtestproject.agent
0 siblings, 0 replies; 2+ messages in thread
From: linuxtestproject.agent @ 2026-08-07 0:00 UTC (permalink / raw)
To: Jinseok Kim; +Cc: ltp
Hi Jinseok,
On Fri, 7 Aug 2026, Jinseok Kim wrote:
> syscalls: consolidate getpid02 into getppid02
Verdict - Reviewed
---
Note:
The agent can sometimes produce false positives although often its
findings are genuine. If you find issues with the review, please
comment this email or ignore the suggestions.
Regards,
LTP AI Reviewer
--
Mailing list info: https://lists.linux.it/listinfo/ltp
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-08-07 0:00 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-06 15:08 [LTP] [PATCH v3] syscalls: consolidate getpid02 into getppid02 Jinseok Kim
2026-08-07 0:00 ` [LTP] " linuxtestproject.agent
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox