X-Git-Url: https://git.liburcu.org/?a=blobdiff_plain;f=include%2Fust%2Fust_trace.h;h=21c941a641cb02426ef6616c6bf7135902aaa562;hb=cc7b66ba103c213a84159c2128cd4096507bdd2b;hp=cedd47fdf5ab8bec5a5038dee3b6f998bd677a66;hpb=58a0db739ef3fb7dec9d61bb9d47e33f873c97b8;p=ust.git diff --git a/include/ust/ust_trace.h b/include/ust/ust_trace.h index cedd47f..21c941a 100644 --- a/include/ust/ust_trace.h +++ b/include/ust/ust_trace.h @@ -70,22 +70,25 @@ } \ static inline int register_event_##name(void *data) \ { \ - return register_trace_##name(trace_printf_##name, data); \ + return register_tracepoint(name, trace_printf_##name, data); \ } \ static inline int unregister_event_##name(void *data) \ { \ - return unregister_trace_##name(trace_printf_##name, data); \ + return unregister_tracepoint(name, trace_printf_##name, data); \ } \ - struct trace_event __event_##name \ - __attribute__((section("__trace_events"), aligned(32))) = { \ + struct trace_event __event_##name = { \ __tpstrtab_##name, \ register_event_##name, \ unregister_event_##name \ }; \ + static struct trace_event * const __event_ptrs_##name \ + __attribute__((used, section("__trace_events_ptrs"))) = \ + &__event_##name; \ + \ static void __attribute__((constructor)) init_##name() \ { \ - void *dummy; \ - register_trace_##name(trace_printf_##name, dummy); \ + void *dummy = NULL; \ + register_tracepoint(name, trace_printf_##name, dummy); \ }