[lttng-dev] [PATCH lttng-tools] Tests fix: Missing waitpid in fork test

Jérémie Galarneau jeremie.galarneau at efficios.com
Wed Feb 26 10:56:57 EST 2014


Signed-off-by: Jérémie Galarneau <jeremie.galarneau at efficios.com>
---
 tests/regression/ust/fork/fork.c | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/tests/regression/ust/fork/fork.c b/tests/regression/ust/fork/fork.c
index 744e920..7df982b 100644
--- a/tests/regression/ust/fork/fork.c
+++ b/tests/regression/ust/fork/fork.c
@@ -20,6 +20,7 @@
 #include <stdio.h>
 #include <unistd.h>
 #include <sys/types.h>
+#include <sys/wait.h>
 #include <stdlib.h>
 
 #define TRACEPOINT_DEFINE
@@ -51,12 +52,19 @@ int main(int argc, char **argv, char *env[])
 		result = execve(argv[1], args, env);
 		if (result == -1) {
 			perror("execve");
-			return 1;
+			result = 1;
+			goto end;
 		}
 	} else {
 		printf("child_pid %d\n", result);
 		tracepoint(ust_tests_fork, after_fork_parent, getpid());
+		if (waitpid(result, NULL, 0) < 0) {
+			perror("waitpid");
+			result = 1;
+			goto end;
+		}
 	}
-
-	return 0;
+	result = 0;
+end:
+	return result;
 }
-- 
1.9.0




More information about the lttng-dev mailing list