X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=tests%2Fhello%2Fhello.c;h=03d07b675e8e99107ec12c78bd6a5de1f4ef9815;hb=193183fb924aef705f30358e54e7386a3a64c78d;hp=a786fbf89fa90d3cbea1109824b6a3aebf92adff;hpb=cc7b66ba103c213a84159c2128cd4096507bdd2b;p=lttng-ust.git diff --git a/tests/hello/hello.c b/tests/hello/hello.c index a786fbf8..03d07b67 100644 --- a/tests/hello/hello.c +++ b/tests/hello/hello.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 @@ -23,16 +25,14 @@ #include #include #include +#include -#include -#include -#include "usterr.h" -#include "tp.h" +#include "ust_tests_hello.h" void inthandler(int sig) { - printf("in handler\n"); - exit(0); + printf("in SIGUSR1 handler\n"); + tracepoint(ust_tests_hello_tptest_sighandler); } int init_int_handler(void) @@ -40,9 +40,10 @@ int init_int_handler(void) int result; struct sigaction act; + memset(&act, 0, sizeof(act)); result = sigemptyset(&act.sa_mask); - if(result == -1) { - PERROR("sigemptyset"); + if (result == -1) { + perror("sigemptyset"); return -1; } @@ -52,40 +53,34 @@ int init_int_handler(void) /* Only defer ourselves. Also, try to restart interrupted * syscalls to disturb the traced program as little as possible. */ - result = sigaction(SIGINT, &act, NULL); - if(result == -1) { - PERROR("sigaction"); + result = sigaction(SIGUSR1, &act, NULL); + if (result == -1) { + perror("sigaction"); return -1; } return 0; } -int main() +int main(int argc, char **argv) { int i; + long values[] = { 1, 2, 3 }; + char text[10] = "test"; + double dbl = 2.0; + float flt = 2222.0; init_int_handler(); printf("Hello, World!\n"); - sleep(1); - for(i=0; i<50; i++) { - ust_marker(bar, "str %s", "FOOBAZ"); - ust_marker(bar2, "number1 %d number2 %d", 53, 9800); - tracepoint(hello_tptest, i); - usleep(100000); - } - - if (scanf("%*s") == EOF) - PERROR("scanf failed"); - - ustctl_stop_trace(getpid(), "auto"); - ustctl_destroy_trace(getpid(), "auto"); - - DBG("TRACE STOPPED"); - if (scanf("%*s") == EOF) - PERROR("scanf failed"); + sleep(10); + //for (i = 0; i < 50; i++) { + for (i = 0; i < 1000000; i++) { + tracepoint(ust_tests_hello_tptest, i, values, + text, strlen(text), dbl, flt); + //usleep(100000); + } return 0; }