projects
/
lttng-ust.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: don't SIGBUS when filesystem is full
[lttng-ust.git]
/
tests
/
fork
/
fork.c
diff --git
a/tests/fork/fork.c
b/tests/fork/fork.c
index 3b84644325948310ed29a6f22f8ca7751185c5d1..0d2906901e4ccb1b8ab0320bd3e610253b9d9157 100644
(file)
--- a/
tests/fork/fork.c
+++ b/
tests/fork/fork.c
@@
-1,9
+1,11
@@
-/* Copyright (C) 2009 Pierre-Marc Fournier
+/*
+ * Copyright (C) 2009 Pierre-Marc Fournier
+ * Copyright (C) 2011 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation;
either
- *
version 2.1 of the License, or (at your option) any later version
.
+ * License as published by the Free Software Foundation;
version 2.1 of
+ *
the License
.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
@@
-20,47
+22,41
@@
#include <sys/types.h>
#include <stdlib.h>
#include <sys/types.h>
#include <stdlib.h>
-#include <ust/marker.h>
+#define TRACEPOINT_DEFINE
+#define TRACEPOINT_CREATE_PROBES
+#include "ust_tests_fork.h"
int main(int argc, char **argv, char *env[])
{
int result;
int main(int argc, char **argv, char *env[])
{
int result;
- if
(argc < 2
) {
+ if
(argc < 2
) {
fprintf(stderr, "usage: fork PROG_TO_EXEC\n");
exit(1);
}
printf("Fork test program, parent pid is %d\n", getpid());
fprintf(stderr, "usage: fork PROG_TO_EXEC\n");
exit(1);
}
printf("Fork test program, parent pid is %d\n", getpid());
- trace_mark(before_fork, MARK_NOARGS);
-
- /* Sleep here to make sure the consumer is initialized before we fork */
- sleep(1);
+ tracepoint(ust_tests_fork, before_fork);
result = fork();
result = fork();
- if(result == -1) {
+ if
(result == -1) {
perror("fork");
return 1;
}
perror("fork");
return 1;
}
- if(result == 0) {
- char *args[] = {
"fork2", NULL
};
+ if
(result == 0) {
+ char *args[] = {
"fork2", NULL
};
printf("Child pid is %d\n", getpid());
printf("Child pid is %d\n", getpid());
- trace_mark(after_fork_child, MARK_NOARGS);
-
- trace_mark(before_exec, "pid %d", getpid());
+ tracepoint(ust_tests_fork, after_fork_child, getpid());
result = execve(argv[1], args, env);
result = execve(argv[1], args, env);
- if(result == -1) {
+ if
(result == -1) {
perror("execve");
return 1;
}
perror("execve");
return 1;
}
-
- trace_mark(after_exec, "pid %d", getpid());
- }
- else {
- trace_mark(after_fork_parent, MARK_NOARGS);
+ } else {
+ tracepoint(ust_tests_fork, after_fork_parent);
}
return 0;
}
return 0;
This page took
0.034658 seconds
and
4
git commands to generate.