create directories branches, tags, trunk
[lttv.git] / markers-userspace / marker-lib.c
index 2c42d4c8394ce9a86cefa05cd7e6b2e80f929212..14d2466d4c8904a86791f13ba6e3c633493f6164 100644 (file)
@@ -2,9 +2,13 @@
 #include "marker.h"
 #include <stdio.h>
 #include <errno.h>
+#include <sys/user.h>
 
-__attribute__ ((visibility ("protected"))) extern struct marker __start___markers[];
-__attribute__ ((visibility ("protected"))) extern struct marker __stop___markers[];
+__attribute__ ((visibility ("protected")))
+extern struct marker __start___markers[];
+
+__attribute__ ((visibility ("protected")))
+extern struct marker __stop___markers[];
 
 /**
  * __mark_empty_function - Empty probe callback
@@ -36,9 +40,13 @@ __attribute__ ((visibility ("protected")))
 void marker_probe_cb(const struct marker *mdata, void *call_private,
        const char *fmt, ...)
 {
-       static unsigned int count = 0;
+       char buf[PAGE_SIZE];
+       va_list ap;
 
-       printf("Test probe function %u\n", count++);
+       va_start(ap, fmt);
+       vsnprintf(buf, PAGE_SIZE-1, fmt, ap);
+       sys_trace(0, 0, buf);
+       va_end(ap);
 }
 
 //FIXME : imv_read won't work with optimized immediate values.
@@ -49,7 +57,8 @@ void testip(void)
        printf("addr : %p\n", __builtin_return_address(0));
 }
 
-__attribute__((constructor, visibility ("protected"))) void marker_init(void)
+__attribute__((constructor, visibility ("protected")))
+void marker_init(void)
 {
        struct marker *iter;
        int ret;
@@ -66,7 +75,8 @@ __attribute__((constructor, visibility ("protected"))) void marker_init(void)
        }
 }
 
-static __attribute__((destructor, visibility ("protected"))) void marker_fini(void)
+__attribute__((destructor, visibility ("protected")))
+void marker_fini(void)
 {
        struct marker *iter;
        int ret;
This page took 0.02239 seconds and 4 git commands to generate.