902 lines
33 KiB
Diff
902 lines
33 KiB
Diff
From 96dc1aa20237b80087f6c9ee29147bb85a5594d9 Mon Sep 17 00:00:00 2001
|
|
From: "Dmitry V. Levin" <ldv@altlinux.org>
|
|
Date: Wed, 6 Mar 2019 16:02:38 +0000
|
|
Subject: [PATCH 24/27] tests: check tracing of orphaned process group
|
|
|
|
* tests/orphaned_process_group.c: New file.
|
|
* tests/.gitignore: Add orphaned_process_group.
|
|
* tests/Makefile.am (check_PROGRAMS): Likewise.
|
|
* tests/gen_tests.in (orphaned_process_group): New test.
|
|
|
|
Skipped files (not present in the tarball):
|
|
tests/.gitignore
|
|
|
|
Additional changes:
|
|
tests/Makefile.in (generated from tests/Makefile.am)
|
|
tests/tests/orphaned_process_group.gen.test (generated from tests/gen_tests.in)
|
|
tests-m32/Makefile.in (generated from tests-m32/Makefile.am)
|
|
tests-m32/gen_tests.in (copy of tests/gen_tests.in)
|
|
tests-m32/orphaned_process_group.c (copy of tests/orphaned_process_group.c)
|
|
tests-m32/tests/orphaned_process_group.gen.test (generated from tests-m32/gen_tests.in)
|
|
tests-mx32/Makefile.in (generated from tests-mx32/Makefile.am)
|
|
tests-mx32/gen_tests.in (copy of tests/gen_tests.in)
|
|
tests-mx32/orphaned_process_group.c (copy of tests/orphaned_process_group.c)
|
|
tests-mx32/tests/orphaned_process_group.gen.test (generated from tests-mx32/gen_tests.in)
|
|
|
|
---
|
|
tests/.gitignore | 1 +
|
|
tests/Makefile.am | 1 +
|
|
tests/gen_tests.in | 1 +
|
|
tests/orphaned_process_group.c | 155 +++++++++++++++++++++++++++++++++++++++++
|
|
4 files changed, 158 insertions(+)
|
|
create mode 100644 tests/orphaned_process_group.c
|
|
|
|
Index: strace-4.24/tests/Makefile.am
|
|
===================================================================
|
|
--- strace-4.24.orig/tests/Makefile.am 2019-03-10 05:47:36.446486219 +0100
|
|
+++ strace-4.24/tests/Makefile.am 2019-03-10 05:50:05.488993755 +0100
|
|
@@ -120,6 +120,7 @@
|
|
nsyscalls-d \
|
|
oldselect-P \
|
|
oldselect-efault-P \
|
|
+ orphaned_process_group \
|
|
pc \
|
|
perf_event_open_nonverbose \
|
|
perf_event_open_unabbrev \
|
|
Index: strace-4.24/tests/gen_tests.in
|
|
===================================================================
|
|
--- strace-4.24.orig/tests/gen_tests.in 2019-03-10 05:19:26.185411954 +0100
|
|
+++ strace-4.24/tests/gen_tests.in 2019-03-10 05:50:05.488993755 +0100
|
|
@@ -287,6 +287,7 @@
|
|
oldstat -a32 -v -P stat.sample -P /dev/full
|
|
open -a30 -P $NAME.sample
|
|
openat -a36 -P $NAME.sample
|
|
+orphaned_process_group . "${srcdir=.}/PTRACE_SEIZE.sh"; run_strace_match_diff -f -e trace=none -e signal='!chld'
|
|
osf_utimes -a21
|
|
pause -a8 -esignal=none
|
|
perf_event_open -a1
|
|
Index: strace-4.24/tests/orphaned_process_group.c
|
|
===================================================================
|
|
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
|
+++ strace-4.24/tests/orphaned_process_group.c 2019-03-10 05:50:05.488993755 +0100
|
|
@@ -0,0 +1,155 @@
|
|
+/*
|
|
+ * Check tracing of orphaned process group.
|
|
+ *
|
|
+ * Copyright (c) 2019 The strace developers.
|
|
+ * All rights reserved.
|
|
+ *
|
|
+ * SPDX-License-Identifier: GPL-2.0-or-later
|
|
+ */
|
|
+
|
|
+#include "tests.h"
|
|
+#include <signal.h>
|
|
+#include <stdio.h>
|
|
+#include <stdlib.h>
|
|
+#include <string.h>
|
|
+#include <unistd.h>
|
|
+#include <sys/wait.h>
|
|
+
|
|
+#define TIMEOUT 5
|
|
+
|
|
+static void
|
|
+alarm_handler(const int no)
|
|
+{
|
|
+ error_msg_and_skip("Orphaned process group semantics"
|
|
+ " is not supported by the kernel");
|
|
+}
|
|
+
|
|
+int
|
|
+main(void)
|
|
+{
|
|
+ int status;
|
|
+
|
|
+ /*
|
|
+ * Unblock all signals.
|
|
+ */
|
|
+ static sigset_t mask;
|
|
+ if (sigprocmask(SIG_SETMASK, &mask, NULL))
|
|
+ perror_msg_and_fail("sigprocmask");
|
|
+
|
|
+ /*
|
|
+ * Create a pipe to track termination of processes.
|
|
+ */
|
|
+ int pipe_fds[2];
|
|
+ if (pipe(pipe_fds))
|
|
+ perror_msg_and_fail("pipe");
|
|
+
|
|
+ /*
|
|
+ * Create a leader for its own new process group.
|
|
+ */
|
|
+ pid_t leader = fork();
|
|
+ if (leader < 0)
|
|
+ perror_msg_and_fail("fork");
|
|
+
|
|
+ if (leader) {
|
|
+ /*
|
|
+ * Close the writing end of the pipe.
|
|
+ */
|
|
+ close(pipe_fds[1]);
|
|
+
|
|
+ /*
|
|
+ * Install the SIGALRM signal handler.
|
|
+ */
|
|
+ static const struct sigaction sa = {
|
|
+ .sa_handler = alarm_handler
|
|
+ };
|
|
+ if (sigaction(SIGALRM, &sa, NULL))
|
|
+ perror_msg_and_fail("sigaction");
|
|
+
|
|
+ /*
|
|
+ * Set an alarm clock.
|
|
+ */
|
|
+ alarm(TIMEOUT);
|
|
+
|
|
+ /*
|
|
+ * Wait for termination of the child process.
|
|
+ */
|
|
+ if (waitpid(leader, &status, 0) != leader)
|
|
+ perror_msg_and_fail("waitpid leader");
|
|
+ if (!WIFEXITED(status) || WEXITSTATUS(status) != 0)
|
|
+ error_msg_and_fail("waitpid leader: "
|
|
+ "unexpected wait status %d",
|
|
+ status);
|
|
+
|
|
+ /*
|
|
+ * Wait for termination of all processes
|
|
+ * in the process group of the child process.
|
|
+ */
|
|
+ if (read(pipe_fds[0], &status, sizeof(status)) != 0)
|
|
+ perror_msg_and_fail("read");
|
|
+
|
|
+ /*
|
|
+ * At this point all processes are gone.
|
|
+ * Let the tracer time to catch up.
|
|
+ */
|
|
+ alarm(0);
|
|
+ sleep(1);
|
|
+ return 0;
|
|
+ }
|
|
+
|
|
+ /*
|
|
+ * Close the reading end of the pipe.
|
|
+ */
|
|
+ close(pipe_fds[0]);
|
|
+
|
|
+ /*
|
|
+ * Create a new process group.
|
|
+ */
|
|
+ if (setpgid(0, 0))
|
|
+ perror_msg_and_fail("setpgid");
|
|
+
|
|
+ /*
|
|
+ * When the leader process terminates, the process group becomes orphaned.
|
|
+ * If any member of the orphaned process group is stopped, then
|
|
+ * a SIGHUP signal followed by a SIGCONT signal is sent to each process
|
|
+ * in the orphaned process group.
|
|
+ * Create a process in a stopped state to activate this behaviour.
|
|
+ */
|
|
+ const pid_t stopped = fork();
|
|
+ if (stopped < 0)
|
|
+ perror_msg_and_fail("fork");
|
|
+ if (!stopped) {
|
|
+ static const struct sigaction sa = { .sa_handler = SIG_DFL };
|
|
+ if (sigaction(SIGHUP, &sa, NULL))
|
|
+ perror_msg_and_fail("sigaction");
|
|
+
|
|
+ raise(SIGSTOP);
|
|
+ _exit(0);
|
|
+ }
|
|
+
|
|
+ /*
|
|
+ * Wait for the process to stop.
|
|
+ */
|
|
+ if (waitpid(stopped, &status, WUNTRACED) != stopped)
|
|
+ perror_msg_and_fail("waitpid WUNTRACED");
|
|
+ if (!WIFSTOPPED(status) || WSTOPSIG(status) != SIGSTOP)
|
|
+ error_msg_and_fail("unexpected wait status %d", status);
|
|
+
|
|
+ /*
|
|
+ * Print the expected output.
|
|
+ */
|
|
+ leader = getpid();
|
|
+ printf("%-5d --- %s {si_signo=%s, si_code=SI_TKILL"
|
|
+ ", si_pid=%d, si_uid=%u} ---\n",
|
|
+ stopped, "SIGSTOP", "SIGSTOP", stopped, geteuid());
|
|
+ printf("%-5d --- stopped by SIGSTOP ---\n", stopped);
|
|
+ printf("%-5d +++ exited with 0 +++\n", leader);
|
|
+ printf("%-5d --- %s {si_signo=%s, si_code=SI_KERNEL} ---\n",
|
|
+ stopped, "SIGHUP", "SIGHUP");
|
|
+ printf("%-5d +++ killed by %s +++\n", stopped, "SIGHUP");
|
|
+ printf("%-5d +++ exited with 0 +++\n", getppid());
|
|
+
|
|
+ /*
|
|
+ * Make the process group orphaned.
|
|
+ */
|
|
+ return 0;
|
|
+}
|
|
Index: strace-4.24/tests-m32/orphaned_process_group.c
|
|
===================================================================
|
|
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
|
+++ strace-4.24/tests-m32/orphaned_process_group.c 2019-03-10 05:51:47.527971970 +0100
|
|
@@ -0,0 +1,155 @@
|
|
+/*
|
|
+ * Check tracing of orphaned process group.
|
|
+ *
|
|
+ * Copyright (c) 2019 The strace developers.
|
|
+ * All rights reserved.
|
|
+ *
|
|
+ * SPDX-License-Identifier: GPL-2.0-or-later
|
|
+ */
|
|
+
|
|
+#include "tests.h"
|
|
+#include <signal.h>
|
|
+#include <stdio.h>
|
|
+#include <stdlib.h>
|
|
+#include <string.h>
|
|
+#include <unistd.h>
|
|
+#include <sys/wait.h>
|
|
+
|
|
+#define TIMEOUT 5
|
|
+
|
|
+static void
|
|
+alarm_handler(const int no)
|
|
+{
|
|
+ error_msg_and_skip("Orphaned process group semantics"
|
|
+ " is not supported by the kernel");
|
|
+}
|
|
+
|
|
+int
|
|
+main(void)
|
|
+{
|
|
+ int status;
|
|
+
|
|
+ /*
|
|
+ * Unblock all signals.
|
|
+ */
|
|
+ static sigset_t mask;
|
|
+ if (sigprocmask(SIG_SETMASK, &mask, NULL))
|
|
+ perror_msg_and_fail("sigprocmask");
|
|
+
|
|
+ /*
|
|
+ * Create a pipe to track termination of processes.
|
|
+ */
|
|
+ int pipe_fds[2];
|
|
+ if (pipe(pipe_fds))
|
|
+ perror_msg_and_fail("pipe");
|
|
+
|
|
+ /*
|
|
+ * Create a leader for its own new process group.
|
|
+ */
|
|
+ pid_t leader = fork();
|
|
+ if (leader < 0)
|
|
+ perror_msg_and_fail("fork");
|
|
+
|
|
+ if (leader) {
|
|
+ /*
|
|
+ * Close the writing end of the pipe.
|
|
+ */
|
|
+ close(pipe_fds[1]);
|
|
+
|
|
+ /*
|
|
+ * Install the SIGALRM signal handler.
|
|
+ */
|
|
+ static const struct sigaction sa = {
|
|
+ .sa_handler = alarm_handler
|
|
+ };
|
|
+ if (sigaction(SIGALRM, &sa, NULL))
|
|
+ perror_msg_and_fail("sigaction");
|
|
+
|
|
+ /*
|
|
+ * Set an alarm clock.
|
|
+ */
|
|
+ alarm(TIMEOUT);
|
|
+
|
|
+ /*
|
|
+ * Wait for termination of the child process.
|
|
+ */
|
|
+ if (waitpid(leader, &status, 0) != leader)
|
|
+ perror_msg_and_fail("waitpid leader");
|
|
+ if (!WIFEXITED(status) || WEXITSTATUS(status) != 0)
|
|
+ error_msg_and_fail("waitpid leader: "
|
|
+ "unexpected wait status %d",
|
|
+ status);
|
|
+
|
|
+ /*
|
|
+ * Wait for termination of all processes
|
|
+ * in the process group of the child process.
|
|
+ */
|
|
+ if (read(pipe_fds[0], &status, sizeof(status)) != 0)
|
|
+ perror_msg_and_fail("read");
|
|
+
|
|
+ /*
|
|
+ * At this point all processes are gone.
|
|
+ * Let the tracer time to catch up.
|
|
+ */
|
|
+ alarm(0);
|
|
+ sleep(1);
|
|
+ return 0;
|
|
+ }
|
|
+
|
|
+ /*
|
|
+ * Close the reading end of the pipe.
|
|
+ */
|
|
+ close(pipe_fds[0]);
|
|
+
|
|
+ /*
|
|
+ * Create a new process group.
|
|
+ */
|
|
+ if (setpgid(0, 0))
|
|
+ perror_msg_and_fail("setpgid");
|
|
+
|
|
+ /*
|
|
+ * When the leader process terminates, the process group becomes orphaned.
|
|
+ * If any member of the orphaned process group is stopped, then
|
|
+ * a SIGHUP signal followed by a SIGCONT signal is sent to each process
|
|
+ * in the orphaned process group.
|
|
+ * Create a process in a stopped state to activate this behaviour.
|
|
+ */
|
|
+ const pid_t stopped = fork();
|
|
+ if (stopped < 0)
|
|
+ perror_msg_and_fail("fork");
|
|
+ if (!stopped) {
|
|
+ static const struct sigaction sa = { .sa_handler = SIG_DFL };
|
|
+ if (sigaction(SIGHUP, &sa, NULL))
|
|
+ perror_msg_and_fail("sigaction");
|
|
+
|
|
+ raise(SIGSTOP);
|
|
+ _exit(0);
|
|
+ }
|
|
+
|
|
+ /*
|
|
+ * Wait for the process to stop.
|
|
+ */
|
|
+ if (waitpid(stopped, &status, WUNTRACED) != stopped)
|
|
+ perror_msg_and_fail("waitpid WUNTRACED");
|
|
+ if (!WIFSTOPPED(status) || WSTOPSIG(status) != SIGSTOP)
|
|
+ error_msg_and_fail("unexpected wait status %d", status);
|
|
+
|
|
+ /*
|
|
+ * Print the expected output.
|
|
+ */
|
|
+ leader = getpid();
|
|
+ printf("%-5d --- %s {si_signo=%s, si_code=SI_TKILL"
|
|
+ ", si_pid=%d, si_uid=%u} ---\n",
|
|
+ stopped, "SIGSTOP", "SIGSTOP", stopped, geteuid());
|
|
+ printf("%-5d --- stopped by SIGSTOP ---\n", stopped);
|
|
+ printf("%-5d +++ exited with 0 +++\n", leader);
|
|
+ printf("%-5d --- %s {si_signo=%s, si_code=SI_KERNEL} ---\n",
|
|
+ stopped, "SIGHUP", "SIGHUP");
|
|
+ printf("%-5d +++ killed by %s +++\n", stopped, "SIGHUP");
|
|
+ printf("%-5d +++ exited with 0 +++\n", getppid());
|
|
+
|
|
+ /*
|
|
+ * Make the process group orphaned.
|
|
+ */
|
|
+ return 0;
|
|
+}
|
|
Index: strace-4.24/tests-mx32/orphaned_process_group.c
|
|
===================================================================
|
|
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
|
+++ strace-4.24/tests-mx32/orphaned_process_group.c 2019-03-10 05:51:50.259944613 +0100
|
|
@@ -0,0 +1,155 @@
|
|
+/*
|
|
+ * Check tracing of orphaned process group.
|
|
+ *
|
|
+ * Copyright (c) 2019 The strace developers.
|
|
+ * All rights reserved.
|
|
+ *
|
|
+ * SPDX-License-Identifier: GPL-2.0-or-later
|
|
+ */
|
|
+
|
|
+#include "tests.h"
|
|
+#include <signal.h>
|
|
+#include <stdio.h>
|
|
+#include <stdlib.h>
|
|
+#include <string.h>
|
|
+#include <unistd.h>
|
|
+#include <sys/wait.h>
|
|
+
|
|
+#define TIMEOUT 5
|
|
+
|
|
+static void
|
|
+alarm_handler(const int no)
|
|
+{
|
|
+ error_msg_and_skip("Orphaned process group semantics"
|
|
+ " is not supported by the kernel");
|
|
+}
|
|
+
|
|
+int
|
|
+main(void)
|
|
+{
|
|
+ int status;
|
|
+
|
|
+ /*
|
|
+ * Unblock all signals.
|
|
+ */
|
|
+ static sigset_t mask;
|
|
+ if (sigprocmask(SIG_SETMASK, &mask, NULL))
|
|
+ perror_msg_and_fail("sigprocmask");
|
|
+
|
|
+ /*
|
|
+ * Create a pipe to track termination of processes.
|
|
+ */
|
|
+ int pipe_fds[2];
|
|
+ if (pipe(pipe_fds))
|
|
+ perror_msg_and_fail("pipe");
|
|
+
|
|
+ /*
|
|
+ * Create a leader for its own new process group.
|
|
+ */
|
|
+ pid_t leader = fork();
|
|
+ if (leader < 0)
|
|
+ perror_msg_and_fail("fork");
|
|
+
|
|
+ if (leader) {
|
|
+ /*
|
|
+ * Close the writing end of the pipe.
|
|
+ */
|
|
+ close(pipe_fds[1]);
|
|
+
|
|
+ /*
|
|
+ * Install the SIGALRM signal handler.
|
|
+ */
|
|
+ static const struct sigaction sa = {
|
|
+ .sa_handler = alarm_handler
|
|
+ };
|
|
+ if (sigaction(SIGALRM, &sa, NULL))
|
|
+ perror_msg_and_fail("sigaction");
|
|
+
|
|
+ /*
|
|
+ * Set an alarm clock.
|
|
+ */
|
|
+ alarm(TIMEOUT);
|
|
+
|
|
+ /*
|
|
+ * Wait for termination of the child process.
|
|
+ */
|
|
+ if (waitpid(leader, &status, 0) != leader)
|
|
+ perror_msg_and_fail("waitpid leader");
|
|
+ if (!WIFEXITED(status) || WEXITSTATUS(status) != 0)
|
|
+ error_msg_and_fail("waitpid leader: "
|
|
+ "unexpected wait status %d",
|
|
+ status);
|
|
+
|
|
+ /*
|
|
+ * Wait for termination of all processes
|
|
+ * in the process group of the child process.
|
|
+ */
|
|
+ if (read(pipe_fds[0], &status, sizeof(status)) != 0)
|
|
+ perror_msg_and_fail("read");
|
|
+
|
|
+ /*
|
|
+ * At this point all processes are gone.
|
|
+ * Let the tracer time to catch up.
|
|
+ */
|
|
+ alarm(0);
|
|
+ sleep(1);
|
|
+ return 0;
|
|
+ }
|
|
+
|
|
+ /*
|
|
+ * Close the reading end of the pipe.
|
|
+ */
|
|
+ close(pipe_fds[0]);
|
|
+
|
|
+ /*
|
|
+ * Create a new process group.
|
|
+ */
|
|
+ if (setpgid(0, 0))
|
|
+ perror_msg_and_fail("setpgid");
|
|
+
|
|
+ /*
|
|
+ * When the leader process terminates, the process group becomes orphaned.
|
|
+ * If any member of the orphaned process group is stopped, then
|
|
+ * a SIGHUP signal followed by a SIGCONT signal is sent to each process
|
|
+ * in the orphaned process group.
|
|
+ * Create a process in a stopped state to activate this behaviour.
|
|
+ */
|
|
+ const pid_t stopped = fork();
|
|
+ if (stopped < 0)
|
|
+ perror_msg_and_fail("fork");
|
|
+ if (!stopped) {
|
|
+ static const struct sigaction sa = { .sa_handler = SIG_DFL };
|
|
+ if (sigaction(SIGHUP, &sa, NULL))
|
|
+ perror_msg_and_fail("sigaction");
|
|
+
|
|
+ raise(SIGSTOP);
|
|
+ _exit(0);
|
|
+ }
|
|
+
|
|
+ /*
|
|
+ * Wait for the process to stop.
|
|
+ */
|
|
+ if (waitpid(stopped, &status, WUNTRACED) != stopped)
|
|
+ perror_msg_and_fail("waitpid WUNTRACED");
|
|
+ if (!WIFSTOPPED(status) || WSTOPSIG(status) != SIGSTOP)
|
|
+ error_msg_and_fail("unexpected wait status %d", status);
|
|
+
|
|
+ /*
|
|
+ * Print the expected output.
|
|
+ */
|
|
+ leader = getpid();
|
|
+ printf("%-5d --- %s {si_signo=%s, si_code=SI_TKILL"
|
|
+ ", si_pid=%d, si_uid=%u} ---\n",
|
|
+ stopped, "SIGSTOP", "SIGSTOP", stopped, geteuid());
|
|
+ printf("%-5d --- stopped by SIGSTOP ---\n", stopped);
|
|
+ printf("%-5d +++ exited with 0 +++\n", leader);
|
|
+ printf("%-5d --- %s {si_signo=%s, si_code=SI_KERNEL} ---\n",
|
|
+ stopped, "SIGHUP", "SIGHUP");
|
|
+ printf("%-5d +++ killed by %s +++\n", stopped, "SIGHUP");
|
|
+ printf("%-5d +++ exited with 0 +++\n", getppid());
|
|
+
|
|
+ /*
|
|
+ * Make the process group orphaned.
|
|
+ */
|
|
+ return 0;
|
|
+}
|
|
Index: strace-4.24/tests/Makefile.in
|
|
===================================================================
|
|
--- strace-4.24.orig/tests/Makefile.in 2019-03-10 05:40:37.973676673 +0100
|
|
+++ strace-4.24/tests/Makefile.in 2019-03-10 05:56:10.763336015 +0100
|
|
@@ -161,8 +161,8 @@
|
|
net-tpacket_stats-success$(EXEEXT) netlink_inet_diag$(EXEEXT) \
|
|
netlink_netlink_diag$(EXEEXT) netlink_unix_diag$(EXEEXT) \
|
|
nsyscalls$(EXEEXT) nsyscalls-d$(EXEEXT) oldselect-P$(EXEEXT) \
|
|
- oldselect-efault-P$(EXEEXT) pc$(EXEEXT) \
|
|
- perf_event_open_nonverbose$(EXEEXT) \
|
|
+ oldselect-efault-P$(EXEEXT) orphaned_process_group$(EXEEXT) \
|
|
+ pc$(EXEEXT) perf_event_open_nonverbose$(EXEEXT) \
|
|
perf_event_open_unabbrev$(EXEEXT) ppoll-v$(EXEEXT) \
|
|
prctl-seccomp-filter-v$(EXEEXT) prctl-seccomp-strict$(EXEEXT) \
|
|
prctl-spec-inject$(EXEEXT) print_maxfd$(EXEEXT) \
|
|
@@ -1743,6 +1743,10 @@
|
|
openat_OBJECTS = openat.$(OBJEXT)
|
|
openat_LDADD = $(LDADD)
|
|
openat_DEPENDENCIES = libtests.a
|
|
+orphaned_process_group_SOURCES = orphaned_process_group.c
|
|
+orphaned_process_group_OBJECTS = orphaned_process_group.$(OBJEXT)
|
|
+orphaned_process_group_LDADD = $(LDADD)
|
|
+orphaned_process_group_DEPENDENCIES = libtests.a
|
|
osf_utimes_SOURCES = osf_utimes.c
|
|
osf_utimes_OBJECTS = osf_utimes.$(OBJEXT)
|
|
osf_utimes_LDADD = $(LDADD)
|
|
@@ -2786,7 +2790,8 @@
|
|
old_mmap-P.c old_mmap-Xabbrev.c old_mmap-Xraw.c \
|
|
old_mmap-Xverbose.c old_mmap-v-none.c oldfstat.c oldlstat.c \
|
|
oldselect.c oldselect-P.c oldselect-efault.c \
|
|
- oldselect-efault-P.c oldstat.c open.c openat.c osf_utimes.c \
|
|
+ oldselect-efault-P.c oldstat.c open.c openat.c \
|
|
+ orphaned_process_group.c osf_utimes.c \
|
|
pause.c pc.c perf_event_open.c perf_event_open_nonverbose.c \
|
|
perf_event_open_unabbrev.c personality.c personality-Xabbrev.c \
|
|
personality-Xraw.c personality-Xverbose.c pipe.c pipe2.c \
|
|
@@ -2931,7 +2936,8 @@
|
|
old_mmap-P.c old_mmap-Xabbrev.c old_mmap-Xraw.c \
|
|
old_mmap-Xverbose.c old_mmap-v-none.c oldfstat.c oldlstat.c \
|
|
oldselect.c oldselect-P.c oldselect-efault.c \
|
|
- oldselect-efault-P.c oldstat.c open.c openat.c osf_utimes.c \
|
|
+ oldselect-efault-P.c oldstat.c open.c openat.c \
|
|
+ orphaned_process_group.c osf_utimes.c \
|
|
pause.c pc.c perf_event_open.c perf_event_open_nonverbose.c \
|
|
perf_event_open_unabbrev.c personality.c personality-Xabbrev.c \
|
|
personality-Xraw.c personality-Xverbose.c pipe.c pipe2.c \
|
|
@@ -4058,7 +4064,8 @@
|
|
oldselect.gen.test oldselect-P.gen.test \
|
|
oldselect-efault.gen.test oldselect-efault-P.gen.test \
|
|
oldstat.gen.test open.gen.test openat.gen.test \
|
|
- osf_utimes.gen.test pause.gen.test perf_event_open.gen.test \
|
|
+ orphaned_process_group.gen.test osf_utimes.gen.test \
|
|
+ pause.gen.test perf_event_open.gen.test \
|
|
perf_event_open_nonverbose.gen.test \
|
|
perf_event_open_unabbrev.gen.test personality-Xabbrev.gen.test \
|
|
personality-Xraw.gen.test personality-Xverbose.gen.test \
|
|
@@ -5752,6 +5759,10 @@
|
|
@rm -f openat$(EXEEXT)
|
|
$(AM_V_CCLD)$(LINK) $(openat_OBJECTS) $(openat_LDADD) $(LIBS)
|
|
|
|
+orphaned_process_group$(EXEEXT): $(orphaned_process_group_OBJECTS) $(orphaned_process_group_DEPENDENCIES) $(EXTRA_orphaned_process_group_DEPENDENCIES)
|
|
+ @rm -f orphaned_process_group$(EXEEXT)
|
|
+ $(AM_V_CCLD)$(LINK) $(orphaned_process_group_OBJECTS) $(orphaned_process_group_LDADD) $(LIBS)
|
|
+
|
|
osf_utimes$(EXEEXT): $(osf_utimes_OBJECTS) $(osf_utimes_DEPENDENCIES) $(EXTRA_osf_utimes_DEPENDENCIES)
|
|
@rm -f osf_utimes$(EXEEXT)
|
|
$(AM_V_CCLD)$(LINK) $(osf_utimes_OBJECTS) $(osf_utimes_LDADD) $(LIBS)
|
|
@@ -7030,6 +7041,7 @@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oldstat.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/open.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/openat.Po@am__quote@
|
|
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/orphaned_process_group.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/osf_utimes.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pause.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pc.Po@am__quote@
|
|
@@ -9128,6 +9140,9 @@
|
|
$(srcdir)/openat.gen.test: $(abs_srcdir)/gen_tests.sh $(srcdir)/gen_tests.in
|
|
$(AM_V_GEN) $^ $@
|
|
|
|
+$(srcdir)/orphaned_process_group.gen.test: $(abs_srcdir)/gen_tests.sh $(srcdir)/gen_tests.in
|
|
+ $(AM_V_GEN) $^ $@
|
|
+
|
|
$(srcdir)/osf_utimes.gen.test: $(abs_srcdir)/gen_tests.sh $(srcdir)/gen_tests.in
|
|
$(AM_V_GEN) $^ $@
|
|
|
|
Index: strace-4.24/tests-m32/Makefile.in
|
|
===================================================================
|
|
--- strace-4.24.orig/tests-m32/Makefile.in 2019-03-10 05:44:56.112091757 +0100
|
|
+++ strace-4.24/tests-m32/Makefile.in 2019-03-10 05:57:09.322749620 +0100
|
|
@@ -161,8 +161,8 @@
|
|
net-tpacket_stats-success$(EXEEXT) netlink_inet_diag$(EXEEXT) \
|
|
netlink_netlink_diag$(EXEEXT) netlink_unix_diag$(EXEEXT) \
|
|
nsyscalls$(EXEEXT) nsyscalls-d$(EXEEXT) oldselect-P$(EXEEXT) \
|
|
- oldselect-efault-P$(EXEEXT) pc$(EXEEXT) \
|
|
- perf_event_open_nonverbose$(EXEEXT) \
|
|
+ oldselect-efault-P$(EXEEXT) orphaned_process_group$(EXEEXT) \
|
|
+ pc$(EXEEXT) perf_event_open_nonverbose$(EXEEXT) \
|
|
perf_event_open_unabbrev$(EXEEXT) ppoll-v$(EXEEXT) \
|
|
prctl-seccomp-filter-v$(EXEEXT) prctl-seccomp-strict$(EXEEXT) \
|
|
prctl-spec-inject$(EXEEXT) print_maxfd$(EXEEXT) \
|
|
@@ -1743,6 +1743,10 @@
|
|
openat_OBJECTS = openat.$(OBJEXT)
|
|
openat_LDADD = $(LDADD)
|
|
openat_DEPENDENCIES = libtests.a
|
|
+orphaned_process_group_SOURCES = orphaned_process_group.c
|
|
+orphaned_process_group_OBJECTS = orphaned_process_group.$(OBJEXT)
|
|
+orphaned_process_group_LDADD = $(LDADD)
|
|
+orphaned_process_group_DEPENDENCIES = libtests.a
|
|
osf_utimes_SOURCES = osf_utimes.c
|
|
osf_utimes_OBJECTS = osf_utimes.$(OBJEXT)
|
|
osf_utimes_LDADD = $(LDADD)
|
|
@@ -2786,7 +2790,8 @@
|
|
old_mmap-P.c old_mmap-Xabbrev.c old_mmap-Xraw.c \
|
|
old_mmap-Xverbose.c old_mmap-v-none.c oldfstat.c oldlstat.c \
|
|
oldselect.c oldselect-P.c oldselect-efault.c \
|
|
- oldselect-efault-P.c oldstat.c open.c openat.c osf_utimes.c \
|
|
+ oldselect-efault-P.c oldstat.c open.c openat.c \
|
|
+ orphaned_process_group.c osf_utimes.c \
|
|
pause.c pc.c perf_event_open.c perf_event_open_nonverbose.c \
|
|
perf_event_open_unabbrev.c personality.c personality-Xabbrev.c \
|
|
personality-Xraw.c personality-Xverbose.c pipe.c pipe2.c \
|
|
@@ -2931,7 +2936,8 @@
|
|
old_mmap-P.c old_mmap-Xabbrev.c old_mmap-Xraw.c \
|
|
old_mmap-Xverbose.c old_mmap-v-none.c oldfstat.c oldlstat.c \
|
|
oldselect.c oldselect-P.c oldselect-efault.c \
|
|
- oldselect-efault-P.c oldstat.c open.c openat.c osf_utimes.c \
|
|
+ oldselect-efault-P.c oldstat.c open.c openat.c \
|
|
+ orphaned_process_group.c osf_utimes.c \
|
|
pause.c pc.c perf_event_open.c perf_event_open_nonverbose.c \
|
|
perf_event_open_unabbrev.c personality.c personality-Xabbrev.c \
|
|
personality-Xraw.c personality-Xverbose.c pipe.c pipe2.c \
|
|
@@ -4058,7 +4064,8 @@
|
|
oldselect.gen.test oldselect-P.gen.test \
|
|
oldselect-efault.gen.test oldselect-efault-P.gen.test \
|
|
oldstat.gen.test open.gen.test openat.gen.test \
|
|
- osf_utimes.gen.test pause.gen.test perf_event_open.gen.test \
|
|
+ orphaned_process_group.gen.test osf_utimes.gen.test \
|
|
+ pause.gen.test perf_event_open.gen.test \
|
|
perf_event_open_nonverbose.gen.test \
|
|
perf_event_open_unabbrev.gen.test personality-Xabbrev.gen.test \
|
|
personality-Xraw.gen.test personality-Xverbose.gen.test \
|
|
@@ -5752,6 +5759,10 @@
|
|
@rm -f openat$(EXEEXT)
|
|
$(AM_V_CCLD)$(LINK) $(openat_OBJECTS) $(openat_LDADD) $(LIBS)
|
|
|
|
+orphaned_process_group$(EXEEXT): $(orphaned_process_group_OBJECTS) $(orphaned_process_group_DEPENDENCIES) $(EXTRA_orphaned_process_group_DEPENDENCIES)
|
|
+ @rm -f orphaned_process_group$(EXEEXT)
|
|
+ $(AM_V_CCLD)$(LINK) $(orphaned_process_group_OBJECTS) $(orphaned_process_group_LDADD) $(LIBS)
|
|
+
|
|
osf_utimes$(EXEEXT): $(osf_utimes_OBJECTS) $(osf_utimes_DEPENDENCIES) $(EXTRA_osf_utimes_DEPENDENCIES)
|
|
@rm -f osf_utimes$(EXEEXT)
|
|
$(AM_V_CCLD)$(LINK) $(osf_utimes_OBJECTS) $(osf_utimes_LDADD) $(LIBS)
|
|
@@ -7030,6 +7041,7 @@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oldstat.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/open.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/openat.Po@am__quote@
|
|
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/orphaned_process_group.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/osf_utimes.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pause.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pc.Po@am__quote@
|
|
@@ -9128,6 +9140,9 @@
|
|
$(srcdir)/openat.gen.test: $(abs_srcdir)/gen_tests.sh $(srcdir)/gen_tests.in
|
|
$(AM_V_GEN) $^ $@
|
|
|
|
+$(srcdir)/orphaned_process_group.gen.test: $(abs_srcdir)/gen_tests.sh $(srcdir)/gen_tests.in
|
|
+ $(AM_V_GEN) $^ $@
|
|
+
|
|
$(srcdir)/osf_utimes.gen.test: $(abs_srcdir)/gen_tests.sh $(srcdir)/gen_tests.in
|
|
$(AM_V_GEN) $^ $@
|
|
|
|
Index: strace-4.24/tests-mx32/Makefile.in
|
|
===================================================================
|
|
--- strace-4.24.orig/tests-mx32/Makefile.in 2019-03-10 05:45:49.892553217 +0100
|
|
+++ strace-4.24/tests-mx32/Makefile.in 2019-03-10 05:57:19.939643305 +0100
|
|
@@ -161,8 +161,8 @@
|
|
net-tpacket_stats-success$(EXEEXT) netlink_inet_diag$(EXEEXT) \
|
|
netlink_netlink_diag$(EXEEXT) netlink_unix_diag$(EXEEXT) \
|
|
nsyscalls$(EXEEXT) nsyscalls-d$(EXEEXT) oldselect-P$(EXEEXT) \
|
|
- oldselect-efault-P$(EXEEXT) pc$(EXEEXT) \
|
|
- perf_event_open_nonverbose$(EXEEXT) \
|
|
+ oldselect-efault-P$(EXEEXT) orphaned_process_group$(EXEEXT) \
|
|
+ pc$(EXEEXT) perf_event_open_nonverbose$(EXEEXT) \
|
|
perf_event_open_unabbrev$(EXEEXT) ppoll-v$(EXEEXT) \
|
|
prctl-seccomp-filter-v$(EXEEXT) prctl-seccomp-strict$(EXEEXT) \
|
|
prctl-spec-inject$(EXEEXT) print_maxfd$(EXEEXT) \
|
|
@@ -1743,6 +1743,10 @@
|
|
openat_OBJECTS = openat.$(OBJEXT)
|
|
openat_LDADD = $(LDADD)
|
|
openat_DEPENDENCIES = libtests.a
|
|
+orphaned_process_group_SOURCES = orphaned_process_group.c
|
|
+orphaned_process_group_OBJECTS = orphaned_process_group.$(OBJEXT)
|
|
+orphaned_process_group_LDADD = $(LDADD)
|
|
+orphaned_process_group_DEPENDENCIES = libtests.a
|
|
osf_utimes_SOURCES = osf_utimes.c
|
|
osf_utimes_OBJECTS = osf_utimes.$(OBJEXT)
|
|
osf_utimes_LDADD = $(LDADD)
|
|
@@ -2786,7 +2790,8 @@
|
|
old_mmap-P.c old_mmap-Xabbrev.c old_mmap-Xraw.c \
|
|
old_mmap-Xverbose.c old_mmap-v-none.c oldfstat.c oldlstat.c \
|
|
oldselect.c oldselect-P.c oldselect-efault.c \
|
|
- oldselect-efault-P.c oldstat.c open.c openat.c osf_utimes.c \
|
|
+ oldselect-efault-P.c oldstat.c open.c openat.c \
|
|
+ orphaned_process_group.c osf_utimes.c \
|
|
pause.c pc.c perf_event_open.c perf_event_open_nonverbose.c \
|
|
perf_event_open_unabbrev.c personality.c personality-Xabbrev.c \
|
|
personality-Xraw.c personality-Xverbose.c pipe.c pipe2.c \
|
|
@@ -2931,7 +2936,8 @@
|
|
old_mmap-P.c old_mmap-Xabbrev.c old_mmap-Xraw.c \
|
|
old_mmap-Xverbose.c old_mmap-v-none.c oldfstat.c oldlstat.c \
|
|
oldselect.c oldselect-P.c oldselect-efault.c \
|
|
- oldselect-efault-P.c oldstat.c open.c openat.c osf_utimes.c \
|
|
+ oldselect-efault-P.c oldstat.c open.c openat.c \
|
|
+ orphaned_process_group.c osf_utimes.c \
|
|
pause.c pc.c perf_event_open.c perf_event_open_nonverbose.c \
|
|
perf_event_open_unabbrev.c personality.c personality-Xabbrev.c \
|
|
personality-Xraw.c personality-Xverbose.c pipe.c pipe2.c \
|
|
@@ -4058,7 +4064,8 @@
|
|
oldselect.gen.test oldselect-P.gen.test \
|
|
oldselect-efault.gen.test oldselect-efault-P.gen.test \
|
|
oldstat.gen.test open.gen.test openat.gen.test \
|
|
- osf_utimes.gen.test pause.gen.test perf_event_open.gen.test \
|
|
+ orphaned_process_group.gen.test osf_utimes.gen.test \
|
|
+ pause.gen.test perf_event_open.gen.test \
|
|
perf_event_open_nonverbose.gen.test \
|
|
perf_event_open_unabbrev.gen.test personality-Xabbrev.gen.test \
|
|
personality-Xraw.gen.test personality-Xverbose.gen.test \
|
|
@@ -5752,6 +5759,10 @@
|
|
@rm -f openat$(EXEEXT)
|
|
$(AM_V_CCLD)$(LINK) $(openat_OBJECTS) $(openat_LDADD) $(LIBS)
|
|
|
|
+orphaned_process_group$(EXEEXT): $(orphaned_process_group_OBJECTS) $(orphaned_process_group_DEPENDENCIES) $(EXTRA_orphaned_process_group_DEPENDENCIES)
|
|
+ @rm -f orphaned_process_group$(EXEEXT)
|
|
+ $(AM_V_CCLD)$(LINK) $(orphaned_process_group_OBJECTS) $(orphaned_process_group_LDADD) $(LIBS)
|
|
+
|
|
osf_utimes$(EXEEXT): $(osf_utimes_OBJECTS) $(osf_utimes_DEPENDENCIES) $(EXTRA_osf_utimes_DEPENDENCIES)
|
|
@rm -f osf_utimes$(EXEEXT)
|
|
$(AM_V_CCLD)$(LINK) $(osf_utimes_OBJECTS) $(osf_utimes_LDADD) $(LIBS)
|
|
@@ -7030,6 +7041,7 @@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oldstat.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/open.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/openat.Po@am__quote@
|
|
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/orphaned_process_group.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/osf_utimes.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pause.Po@am__quote@
|
|
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pc.Po@am__quote@
|
|
@@ -9128,6 +9140,9 @@
|
|
$(srcdir)/openat.gen.test: $(abs_srcdir)/gen_tests.sh $(srcdir)/gen_tests.in
|
|
$(AM_V_GEN) $^ $@
|
|
|
|
+$(srcdir)/orphaned_process_group.gen.test: $(abs_srcdir)/gen_tests.sh $(srcdir)/gen_tests.in
|
|
+ $(AM_V_GEN) $^ $@
|
|
+
|
|
$(srcdir)/osf_utimes.gen.test: $(abs_srcdir)/gen_tests.sh $(srcdir)/gen_tests.in
|
|
$(AM_V_GEN) $^ $@
|
|
|
|
Index: strace-4.24/tests-m32/orphaned_process_group.gen.test
|
|
===================================================================
|
|
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
|
+++ strace-4.24/tests-m32/orphaned_process_group.gen.test 2019-03-10 05:59:50.567134970 +0100
|
|
@@ -0,0 +1,4 @@
|
|
+#!/bin/sh -efu
|
|
+# Generated by ./tests/gen_tests.sh from ./tests/gen_tests.in (orphaned_process_group . "${srcdir=.}/PTRACE_SEIZE.sh"; run_strace_match_diff -f -e trace=none -e signal='!chld'); do not edit.
|
|
+. "${srcdir=.}/init.sh"
|
|
+. "${srcdir=.}/PTRACE_SEIZE.sh"; run_strace_match_diff -f -e trace=none -e signal='!chld'
|
|
Index: strace-4.24/tests-mx32/orphaned_process_group.gen.test
|
|
===================================================================
|
|
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
|
+++ strace-4.24/tests-mx32/orphaned_process_group.gen.test 2019-03-10 05:59:51.671123915 +0100
|
|
@@ -0,0 +1,4 @@
|
|
+#!/bin/sh -efu
|
|
+# Generated by ./tests/gen_tests.sh from ./tests/gen_tests.in (orphaned_process_group . "${srcdir=.}/PTRACE_SEIZE.sh"; run_strace_match_diff -f -e trace=none -e signal='!chld'); do not edit.
|
|
+. "${srcdir=.}/init.sh"
|
|
+. "${srcdir=.}/PTRACE_SEIZE.sh"; run_strace_match_diff -f -e trace=none -e signal='!chld'
|
|
Index: strace-4.24/tests/orphaned_process_group.gen.test
|
|
===================================================================
|
|
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
|
|
+++ strace-4.24/tests/orphaned_process_group.gen.test 2019-03-10 05:59:48.722153445 +0100
|
|
@@ -0,0 +1,4 @@
|
|
+#!/bin/sh -efu
|
|
+# Generated by ./tests/gen_tests.sh from ./tests/gen_tests.in (orphaned_process_group . "${srcdir=.}/PTRACE_SEIZE.sh"; run_strace_match_diff -f -e trace=none -e signal='!chld'); do not edit.
|
|
+. "${srcdir=.}/init.sh"
|
|
+. "${srcdir=.}/PTRACE_SEIZE.sh"; run_strace_match_diff -f -e trace=none -e signal='!chld'
|
|
Index: strace-4.24/tests-m32/gen_tests.in
|
|
===================================================================
|
|
--- strace-4.24.orig/tests-m32/gen_tests.in 2018-08-01 16:57:16.000000000 +0200
|
|
+++ strace-4.24/tests-m32/gen_tests.in 2019-03-10 06:00:59.151448188 +0100
|
|
@@ -3,27 +3,7 @@
|
|
# Copyright (c) 2017-2018 The strace developers.
|
|
# All rights reserved.
|
|
#
|
|
-# Redistribution and use in source and binary forms, with or without
|
|
-# modification, are permitted provided that the following conditions
|
|
-# are met:
|
|
-# 1. Redistributions of source code must retain the above copyright
|
|
-# notice, this list of conditions and the following disclaimer.
|
|
-# 2. Redistributions in binary form must reproduce the above copyright
|
|
-# notice, this list of conditions and the following disclaimer in the
|
|
-# documentation and/or other materials provided with the distribution.
|
|
-# 3. The name of the author may not be used to endorse or promote products
|
|
-# derived from this software without specific prior written permission.
|
|
-#
|
|
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
-# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
-# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
-# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
-# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
-# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
-# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
+# SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
_newselect
|
|
_newselect-P -e trace=_newselect -P /dev/full 9>>/dev/full
|
|
@@ -307,6 +287,7 @@
|
|
oldstat -a32 -v -P stat.sample -P /dev/full
|
|
open -a30 -P $NAME.sample
|
|
openat -a36 -P $NAME.sample
|
|
+orphaned_process_group . "${srcdir=.}/PTRACE_SEIZE.sh"; run_strace_match_diff -f -e trace=none -e signal='!chld'
|
|
osf_utimes -a21
|
|
pause -a8 -esignal=none
|
|
perf_event_open -a1
|
|
Index: strace-4.24/tests-mx32/gen_tests.in
|
|
===================================================================
|
|
--- strace-4.24.orig/tests-mx32/gen_tests.in 2018-08-01 16:57:16.000000000 +0200
|
|
+++ strace-4.24/tests-mx32/gen_tests.in 2019-03-10 06:01:00.297436713 +0100
|
|
@@ -3,27 +3,7 @@
|
|
# Copyright (c) 2017-2018 The strace developers.
|
|
# All rights reserved.
|
|
#
|
|
-# Redistribution and use in source and binary forms, with or without
|
|
-# modification, are permitted provided that the following conditions
|
|
-# are met:
|
|
-# 1. Redistributions of source code must retain the above copyright
|
|
-# notice, this list of conditions and the following disclaimer.
|
|
-# 2. Redistributions in binary form must reproduce the above copyright
|
|
-# notice, this list of conditions and the following disclaimer in the
|
|
-# documentation and/or other materials provided with the distribution.
|
|
-# 3. The name of the author may not be used to endorse or promote products
|
|
-# derived from this software without specific prior written permission.
|
|
-#
|
|
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
-# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
-# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
-# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
-# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
-# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
-# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
+# SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
_newselect
|
|
_newselect-P -e trace=_newselect -P /dev/full 9>>/dev/full
|
|
@@ -307,6 +287,7 @@
|
|
oldstat -a32 -v -P stat.sample -P /dev/full
|
|
open -a30 -P $NAME.sample
|
|
openat -a36 -P $NAME.sample
|
|
+orphaned_process_group . "${srcdir=.}/PTRACE_SEIZE.sh"; run_strace_match_diff -f -e trace=none -e signal='!chld'
|
|
osf_utimes -a21
|
|
pause -a8 -esignal=none
|
|
perf_event_open -a1
|