2
* Copyright (C) 2009 Pierre-Marc Fournier
3
* Copyright (C) 2011 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
5
* This library is free software; you can redistribute it and/or
6
* modify it under the terms of the GNU Lesser General Public
7
* License as published by the Free Software Foundation; version 2.1 of
10
* This library is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
* Lesser General Public License for more details.
15
* You should have received a copy of the GNU Lesser General Public
16
* License along with this library; if not, write to the Free Software
17
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
24
#include <sys/types.h>
29
#include <arpa/inet.h>
32
#define TRACEPOINT_DEFINE
33
#include "ust_tests_hello.h"
35
void inthandler(int sig)
37
printf("in SIGUSR1 handler\n");
38
tracepoint(ust_tests_hello, tptest_sighandler);
41
int init_int_handler(void)
46
memset(&act, 0, sizeof(act));
47
result = sigemptyset(&act.sa_mask);
49
perror("sigemptyset");
53
act.sa_handler = inthandler;
54
act.sa_flags = SA_RESTART;
56
/* Only defer ourselves. Also, try to restart interrupted
57
* syscalls to disturb the traced program as little as possible.
59
result = sigaction(SIGUSR1, &act, NULL);
68
int main(int argc, char **argv)
71
long values[] = { 1, 2, 3 };
72
char text[10] = "test";
80
delay = atoi(argv[1]);
82
fprintf(stderr, "Hello, World!\n");
86
fprintf(stderr, "Tracing... ");
87
for (i = 0; i < 1000000; i++) {
89
tracepoint(ust_tests_hello, tptest, i, netint, values,
90
text, strlen(text), dbl, flt);
93
fprintf(stderr, " done.\n");