comment synchronize_sched()
[ust.git] / hello / hello.c
index 0735fd6b6004a518d2c37f11c11623c2d97f2d3f..102b7db258ce566daff95bc2ce540c629a75d1f8 100644 (file)
@@ -1,24 +1,79 @@
 #include <stdio.h>
 #include <unistd.h>
+#include <sys/mman.h>
+#include <stdarg.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <signal.h>
 
-#include "../libmarkers/marker.h"
+#include "marker.h"
+#include "usterr.h"
+#include "tracer.h"
+#include "marker-control.h"
+#include "relay.h"
+#include "tp.h"
 
-void probe(const struct marker *mdata,
-               void *probe_private, void *call_private,
-               const char *fmt, va_list *args)
+
+void inthandler(int sig)
+{
+       printf("in handler\n");
+       exit(0);
+}
+
+int init_int_handler(void)
 {
-       printf("In probe\n");
+       int result;
+       struct sigaction act;
+
+       result = sigemptyset(&act.sa_mask);
+       if(result == -1) {
+               PERROR("sigemptyset");
+               return -1;
+       }
+
+       act.sa_handler = inthandler;
+       act.sa_flags = SA_RESTART;
+
+       /* 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");
+               return -1;
+       }
+
+       return 0;
 }
 
 int main()
 {
+       int result;
+       int i;
+
+       init_int_handler();
+
        printf("Hello, World!\n");
 
-       marker_probe_register("abc", "testmark", "", probe, NULL);
+       sleep(1);
+       for(i=0; i<50; i++) {
+               trace_mark(ust, bar, "str %s", "FOOBAZ");
+               trace_mark(ust, bar2, "number1 %d number2 %d", 53, 9800);
+               trace_hello_tptest(i);
+               usleep(100000);
+       }
 
-       trace_mark(abc, testmark, "", MARK_NOARGS);
+       scanf("%*s");
+
+       ltt_trace_stop("auto");
+       ltt_trace_destroy("auto");
 
+       DBG("TRACE STOPPED");
        scanf("%*s");
 
        return 0;
 }
+
+MARKER_LIB;
+TRACEPOINT_LIB;
This page took 0.023914 seconds and 4 git commands to generate.