X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=tests%2Ffork%2Ffork.c;h=f15a692535d165a1d0ecb7c914e3f18b5d3e7120;hb=7083f0fecaa692b819e63f484daf38399f58c905;hp=a80518d8154a6de37e59d72bce6494b4b50a5eea;hpb=36c95a5e121f351f8733fedeeb2669cb4b8aef17;p=lttng-ust.git diff --git a/tests/fork/fork.c b/tests/fork/fork.c index a80518d8..f15a6925 100644 --- 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 * * 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 @@ -20,47 +22,40 @@ #include #include -#include +#define TRACEPOINT_CREATE_PROBES +#include "ust_tests_fork.h" 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()); - trace_mark(ust, 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(); - if(result == -1) { + if (result == -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()); - trace_mark(ust, after_fork_child, MARK_NOARGS); - - trace_mark(ust, before_exec, "pid %d", getpid()); + tracepoint(ust_tests_fork, after_fork_child, getpid()); result = execve(argv[1], args, env); - if(result == -1) { + if (result == -1) { perror("execve"); return 1; } - - trace_mark(ust, after_exec, "pid %d", getpid()); - } - else { - trace_mark(ust, after_fork_parent, MARK_NOARGS); + } else { + tracepoint(ust_tests_fork, after_fork_parent); } return 0;