X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;ds=inline;f=hello%2Fhello.c;h=d271a453149b4e74b05ee7242f185b408b645d18;hb=4db647c5217c9350040c781cdca7ad4a09384337;hp=ee7992b00d006aa9d264a634b268b30680a55d52;hpb=c463904d75d0711fe6380ef0cda4ed07e6f7f969;p=lttng-ust.git diff --git a/hello/hello.c b/hello/hello.c index ee7992b0..d271a453 100644 --- a/hello/hello.c +++ b/hello/hello.c @@ -14,8 +14,6 @@ char consumer_stack[10000]; -char trace_name[] = "theusttrace"; -char trace_type[] = "ustrelay"; #define CPRINTF(fmt, args...) safe_printf(fmt "\n", ## args) @@ -47,6 +45,7 @@ int consumer(void *arg) struct ltt_trace_struct *trace; struct consumer_channel *consumer_channels; int i; + char trace_name[] = "auto"; ltt_lock_traces(); trace = _ltt_trace_find(trace_name); @@ -58,7 +57,7 @@ int consumer(void *arg) } consumer_channels = (struct consumer_channel *) malloc(trace->nr_channels * sizeof(struct consumer_channel)); - if(consumer_channels == NULL) { +if(consumer_channels == NULL) { ERR("malloc returned NULL"); return 1; } @@ -148,7 +147,7 @@ void start_consumer(void) { int result; - result = clone(consumer, consumer_stack+sizeof(consumer_stack)-1, CLONE_FS | CLONE_FILES | CLONE_VM, NULL); + result = clone(consumer, consumer_stack+sizeof(consumer_stack)-1, CLONE_FS | CLONE_FILES | CLONE_VM | CLONE_SIGHAND | CLONE_THREAD, NULL); if(result == -1) { perror("clone"); } @@ -200,74 +199,17 @@ int main() init_int_handler(); - init_ustrelay_transport(); - - printf("page size is %d\n", sysconf(_SC_PAGE_SIZE)); - -// extern struct marker __start___markers[] __attribute__((visibility("hidden"))); -// extern struct marker __stop___markers[] __attribute__((visibility("hidden"))); -// -// printf("the executable's markers start at %lx and end at %lx, the size of a marker is %d\n", __start___markers, __stop___markers, sizeof(struct marker)); - - marker_control_init(); - - //marker_probe_register("abc", "testmark", "", probe, NULL); -//ust// marker_probe_register("metadata", "core_marker_id", "channel %s name %s event_id %hu int #1u%zu long #1u%zu pointer #1u%zu size_t #1u%zu alignment #1u%u", probe, NULL); -//ust// result = ltt_probe_register(&default_probe); -//ust// if(result) -//ust// ERR("ltt_probe_register"); - - //result = ltt_marker_connect("metadata", "testev", "default"); - //if(result) - // ERR("ltt_marker_connect"); - result = ltt_marker_connect("foo", "bar", "default"); - if(result) - ERR("ltt_marker_connect"); - - result = ltt_trace_setup(trace_name); - if(result < 0) { - ERR("ltt_trace_setup failed"); - return 1; - } - - result = ltt_trace_set_type(trace_name, trace_type); - if(result < 0) { - ERR("ltt_trace_set_type failed"); - return 1; - } - - result = ltt_trace_alloc(trace_name); - if(result < 0) { - ERR("ltt_trace_alloc failed"); - return 1; - } - - result = ltt_trace_start(trace_name); - if(result < 0) { - ERR("ltt_trace_start failed"); - return 1; - } - start_consumer(); printf("Hello, World!\n"); sleep(1); for(i=0; i<50; i++) { - //trace_mark(abc, testmark, "", MARK_NOARGS); - //trace_mark(metadata, testev, "", MARK_NOARGS); trace_mark(foo, bar, "%s", "FOOBAZ"); - //trace_mark(metadata, core_marker_id, - // "channel %s name %s event_id %hu " - // "int #1u%zu long #1u%zu pointer #1u%zu " - // "size_t #1u%zu alignment #1u%u", - // "abc", "def", (unsigned short)1000, - // sizeof(int), sizeof(long), sizeof(void *), - // sizeof(size_t), ltt_get_alignment()); usleep(100000); } - ltt_trace_stop(trace_name); - ltt_trace_destroy(trace_name); + ltt_trace_stop("auto"); + ltt_trace_destroy("auto"); scanf("%*s");