mirror of
https://github.com/checkpoint-restore/criu
synced 2025-08-31 06:15:24 +00:00
zdtm: Factor out ps showing code
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
This commit is contained in:
@@ -218,6 +218,19 @@ static int ns_exec(void *_arg)
|
||||
return -1;
|
||||
}
|
||||
|
||||
static void show_ps(void)
|
||||
{
|
||||
int pid;
|
||||
|
||||
pid = fork();
|
||||
if (pid == 0) {
|
||||
execl("/bin/ps", "ps", "axf", "-o", "pid,sid,comm", NULL);
|
||||
fprintf(stderr, "Unable to execute ps: %m\n");
|
||||
exit(1);
|
||||
} else if (pid > 0)
|
||||
waitpid(pid, NULL, 0);
|
||||
}
|
||||
|
||||
int ns_init(int argc, char **argv)
|
||||
{
|
||||
struct sigaction sa = {
|
||||
@@ -261,13 +274,7 @@ int ns_init(int argc, char **argv)
|
||||
else if (ret)
|
||||
fprintf(stderr, "The test returned non-zero code %d\n", ret);
|
||||
|
||||
pid = fork();
|
||||
if (pid == 0) {
|
||||
execl("/bin/ps", "ps", "axf", "-o", "pid,sid,comm", NULL);
|
||||
fprintf(stderr, "Unable to execute ps: %m\n");
|
||||
exit(1);
|
||||
} else if (pid > 0)
|
||||
waitpid(pid, NULL, 0);
|
||||
show_ps();
|
||||
|
||||
if (sigaction(SIGCHLD, &sa, NULL)) {
|
||||
fprintf(stderr, "Can't set SIGCHLD handler: %m\n");
|
||||
@@ -297,13 +304,7 @@ int ns_init(int argc, char **argv)
|
||||
/* suspend/resume */
|
||||
test_waitsig();
|
||||
|
||||
pid = fork();
|
||||
if (pid == 0) {
|
||||
execl("/bin/ps", "ps", "axf", "-o", "pid,sid,comm", NULL);
|
||||
fprintf(stderr, "Unable to execute ps: %m\n");
|
||||
exit(1);
|
||||
} else if (pid > 0)
|
||||
waitpid(pid, NULL, 0);
|
||||
show_ps();
|
||||
|
||||
fd = open(pidfile, O_RDONLY);
|
||||
if (fd == -1) {
|
||||
|
Reference in New Issue
Block a user