From 3c82ede91f6c984248977a5f81eed3f7d1badfce Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Fri, 20 May 2011 16:11:13 -0400 Subject: [PATCH] Remove installed headers, cleanup header names Signed-off-by: Mathieu Desnoyers --- include/Makefile.am | 18 +-- include/ust/probe-internal.h | 51 ++++++++ include/ust/probe.h | 117 ++++++++++++------ .../{define_trace.h => tracepoint_event.h} | 11 +- include/ust/ust_trace.h | 96 -------------- libust/tracer.h | 2 +- tests/hello/tp.h | 2 +- tests/register_test/tp.h | 2 +- tests/trace_event/trace_event_test.h | 2 +- .../benchmark/tracepoint_benchmark.h | 2 +- 10 files changed, 153 insertions(+), 150 deletions(-) create mode 100644 include/ust/probe-internal.h rename include/ust/{define_trace.h => tracepoint_event.h} (91%) delete mode 100644 include/ust/ust_trace.h diff --git a/include/Makefile.am b/include/Makefile.am index 9fd7dee5..c6e92b83 100644 --- a/include/Makefile.am +++ b/include/Makefile.am @@ -1,27 +1,27 @@ nobase_include_HEADERS = \ ust/marker.h \ ust/tracepoint.h \ - ust/define_trace.h \ - ust/ust_trace.h \ - ust/tracectl.h \ - ust/config.h \ - ust/stringify.h \ - ust/ustctl.h \ - ust/ustconsumer.h + ust/tracepoint_event.h \ + ust/probe.h noinst_HEADERS = \ share.h \ usterr.h \ ust_snprintf.h \ usterr_signal_safe.h \ + ust/config.h \ ust/core.h \ ust/marker-internal.h \ ust/tracepoint-internal.h \ ust/clock.h \ - ust/probe.h \ + ust/probe-internal.h \ ust/processor.h \ ust/kcompat/kcompat.h \ ust/kcompat/jhash.h \ ust/kcompat/compiler.h \ ust/kcompat/simple.h \ - ust/kcompat/types.h + ust/kcompat/types.h \ + ust/tracectl.h \ + ust/ustctl.h \ + ust/ustconsumer.h \ + ust/stringify.h diff --git a/include/ust/probe-internal.h b/include/ust/probe-internal.h new file mode 100644 index 00000000..a4f3a0e5 --- /dev/null +++ b/include/ust/probe-internal.h @@ -0,0 +1,51 @@ +#ifndef _UST_PROBE_H +#define _UST_PROBE_H + +/* + * Copyright (C) 2009 Pierre-Marc Fournier + * + * 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. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + * + */ + +/* Maximum number of callbacks per marker */ +#define LTT_NR_CALLBACKS 10 + +struct ltt_serialize_closure; +struct ust_buffer; + +typedef size_t (*ltt_serialize_cb)(struct ust_buffer *buf, size_t buf_offset, + struct ltt_serialize_closure *closure, + void *serialize_private, + unsigned int stack_pos_ctx, + int *largest_align, + const char *fmt, va_list *args); + +struct ltt_available_probe { + const char *name; /* probe name */ + const char *format; + ust_marker_probe_func *probe_func; + ltt_serialize_cb callbacks[LTT_NR_CALLBACKS]; + struct cds_list_head node; /* registered probes list */ +}; + +extern int ltt_probe_register(struct ltt_available_probe *pdata); +extern int ltt_probe_unregister(struct ltt_available_probe *pdata); +extern int ltt_ust_marker_connect(const char *channel, const char *mname, + const char *pname); +extern int ltt_ust_marker_disconnect(const char *channel, const char *mname, + const char *pname); + +#endif /* _UST_PROBE_H */ diff --git a/include/ust/probe.h b/include/ust/probe.h index a4f3a0e5..fe27da2b 100644 --- a/include/ust/probe.h +++ b/include/ust/probe.h @@ -1,13 +1,12 @@ -#ifndef _UST_PROBE_H -#define _UST_PROBE_H - /* - * Copyright (C) 2009 Pierre-Marc Fournier + * Copyright (C) 2009 Steven Rostedt + * Copyright (C) 2010 Nils Carlson + * 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 @@ -17,35 +16,81 @@ * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * */ -/* Maximum number of callbacks per marker */ -#define LTT_NR_CALLBACKS 10 - -struct ltt_serialize_closure; -struct ust_buffer; - -typedef size_t (*ltt_serialize_cb)(struct ust_buffer *buf, size_t buf_offset, - struct ltt_serialize_closure *closure, - void *serialize_private, - unsigned int stack_pos_ctx, - int *largest_align, - const char *fmt, va_list *args); - -struct ltt_available_probe { - const char *name; /* probe name */ - const char *format; - ust_marker_probe_func *probe_func; - ltt_serialize_cb callbacks[LTT_NR_CALLBACKS]; - struct cds_list_head node; /* registered probes list */ -}; - -extern int ltt_probe_register(struct ltt_available_probe *pdata); -extern int ltt_probe_unregister(struct ltt_available_probe *pdata); -extern int ltt_ust_marker_connect(const char *channel, const char *mname, - const char *pname); -extern int ltt_ust_marker_disconnect(const char *channel, const char *mname, - const char *pname); - -#endif /* _UST_PROBE_H */ +/* + * This whole file is currently a dummy. + */ + +#include + +#undef TRACEPOINT_EVENT +#define TRACEPOINT_EVENT(name, proto, args, fields) \ + TRACEPOINT_EVENT_CLASS(name, \ + TP_PARAMS(proto), \ + TP_PARAMS(args), \ + TP_PARAMS(fields)); \ + TRACEPOINT_EVENT_INSTANCE(name, name, TP_PARAMS(proto), \ + TP_PARAMS(args)); + +#undef TRACEPOINT_EVENT_NOARGS +#define TRACEPOINT_EVENT_NOARGS(name, fields) \ + TRACEPOINT_EVENT_CLASS_NOARGS(name, \ + TP_PARAMS(fields)); \ + TRACEPOINT_EVENT_INSTANCE_NOARGS(name, name); + +#undef tp_field +#define tp_field(type, item, src) type item; + +#undef TP_FIELDS +#define TP_FIELDS(args...) args + +#undef TRACEPOINT_EVENT_INSTANCE +#define TRACEPOINT_EVENT_INSTANCE(template, name, proto, args) + +#undef TRACEPOINT_EVENT_INSTANCE_NOARGS +#define TRACEPOINT_EVENT_INSTANCE_NOARGS(template, name) + +#undef TRACEPOINT_EVENT_CLASS +#define TRACEPOINT_EVENT_CLASS(name, proto, args, fields) \ + struct trace_raw_##name { \ + fields \ + }; \ + static void trace_printf_##name(void *dummy, proto) \ + { \ + } \ + struct trace_event __event_##name = { \ + __tpstrtab_##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 = NULL; \ + __register_tracepoint(name, trace_printf_##name, dummy);\ + } + +#undef TRACEPOINT_EVENT_CLASS_NOARGS +#define TRACEPOINT_EVENT_CLASS_NOARGS(name, fields) \ + struct trace_raw_##name { \ + fields \ + }; \ + static void trace_printf_##name(void *dummy) \ + { \ + } \ + struct trace_event __event_##name = { \ + __tpstrtab_##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 = NULL; \ + __register_tracepoint(name, trace_printf_##name, dummy);\ + } + +#include TRACE_INCLUDE(TRACE_INCLUDE_FILE) diff --git a/include/ust/define_trace.h b/include/ust/tracepoint_event.h similarity index 91% rename from include/ust/define_trace.h rename to include/ust/tracepoint_event.h index 14543f92..12e8e497 100644 --- a/include/ust/define_trace.h +++ b/include/ust/tracepoint_event.h @@ -29,7 +29,7 @@ * * TRACE_INCLUDE_PATH if the path is something other than core kernel include/trace * then this macro can define the path to use. Note, the path is relative to - * define_trace.h, not the file including it. Full path names for out of tree + * tracepoint_event.h, not the file including it. Full path names for out of tree * modules must be used. */ @@ -38,7 +38,10 @@ /* Prevent recursion */ #undef TRACEPOINT_CREATE_PROBES -#include +#ifndef __tp_stringify +#define __tp_stringify_1(x...) #x +#define __tp_stringify(x...) __tp_stringify_1(x) +#endif #undef TRACEPOINT_EVENT #define TRACEPOINT_EVENT(name, proto, args, fields) \ @@ -68,7 +71,7 @@ # define __TRACE_INCLUDE(system) # define UNDEF_TRACE_INCLUDE_PATH #else -# define __TRACE_INCLUDE(system) __stringify(TRACE_INCLUDE_PATH/system.h) +# define __TRACE_INCLUDE(system) __tp_stringify(TRACE_INCLUDE_PATH/system.h) #endif # define TRACE_INCLUDE(system) __TRACE_INCLUDE(system) @@ -79,7 +82,7 @@ #include TRACE_INCLUDE(TRACE_INCLUDE_FILE) #ifndef CONFIG_NO_EVENT_TRACING -#include +#include #endif #undef TRACEPOINT_EVENT diff --git a/include/ust/ust_trace.h b/include/ust/ust_trace.h deleted file mode 100644 index fe27da2b..00000000 --- a/include/ust/ust_trace.h +++ /dev/null @@ -1,96 +0,0 @@ -/* - * Copyright (C) 2009 Steven Rostedt - * Copyright (C) 2010 Nils Carlson - * 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; - * 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 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -/* - * This whole file is currently a dummy. - */ - -#include - -#undef TRACEPOINT_EVENT -#define TRACEPOINT_EVENT(name, proto, args, fields) \ - TRACEPOINT_EVENT_CLASS(name, \ - TP_PARAMS(proto), \ - TP_PARAMS(args), \ - TP_PARAMS(fields)); \ - TRACEPOINT_EVENT_INSTANCE(name, name, TP_PARAMS(proto), \ - TP_PARAMS(args)); - -#undef TRACEPOINT_EVENT_NOARGS -#define TRACEPOINT_EVENT_NOARGS(name, fields) \ - TRACEPOINT_EVENT_CLASS_NOARGS(name, \ - TP_PARAMS(fields)); \ - TRACEPOINT_EVENT_INSTANCE_NOARGS(name, name); - -#undef tp_field -#define tp_field(type, item, src) type item; - -#undef TP_FIELDS -#define TP_FIELDS(args...) args - -#undef TRACEPOINT_EVENT_INSTANCE -#define TRACEPOINT_EVENT_INSTANCE(template, name, proto, args) - -#undef TRACEPOINT_EVENT_INSTANCE_NOARGS -#define TRACEPOINT_EVENT_INSTANCE_NOARGS(template, name) - -#undef TRACEPOINT_EVENT_CLASS -#define TRACEPOINT_EVENT_CLASS(name, proto, args, fields) \ - struct trace_raw_##name { \ - fields \ - }; \ - static void trace_printf_##name(void *dummy, proto) \ - { \ - } \ - struct trace_event __event_##name = { \ - __tpstrtab_##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 = NULL; \ - __register_tracepoint(name, trace_printf_##name, dummy);\ - } - -#undef TRACEPOINT_EVENT_CLASS_NOARGS -#define TRACEPOINT_EVENT_CLASS_NOARGS(name, fields) \ - struct trace_raw_##name { \ - fields \ - }; \ - static void trace_printf_##name(void *dummy) \ - { \ - } \ - struct trace_event __event_##name = { \ - __tpstrtab_##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 = NULL; \ - __register_tracepoint(name, trace_printf_##name, dummy);\ - } - -#include TRACE_INCLUDE(TRACE_INCLUDE_FILE) diff --git a/libust/tracer.h b/libust/tracer.h index 1e07027b..03049aa3 100644 --- a/libust/tracer.h +++ b/libust/tracer.h @@ -28,7 +28,7 @@ #include #include #include -#include +#include #include #include "channels.h" #include "tracercore.h" diff --git a/tests/hello/tp.h b/tests/hello/tp.h index d6d8d99b..e363971b 100644 --- a/tests/hello/tp.h +++ b/tests/hello/tp.h @@ -40,4 +40,4 @@ TRACEPOINT_EVENT_NOARGS(hello_tptest2, #define TRACE_INCLUDE_FILE tp /* This part must be outside protection */ -#include +#include diff --git a/tests/register_test/tp.h b/tests/register_test/tp.h index 86d340c7..2a908134 100644 --- a/tests/register_test/tp.h +++ b/tests/register_test/tp.h @@ -37,4 +37,4 @@ TRACEPOINT_EVENT(hello_tptest, #define TRACE_INCLUDE_FILE tp /* This part must be outside protection */ -#include +#include diff --git a/tests/trace_event/trace_event_test.h b/tests/trace_event/trace_event_test.h index 3a126d42..19fab2ff 100644 --- a/tests/trace_event/trace_event_test.h +++ b/tests/trace_event/trace_event_test.h @@ -43,4 +43,4 @@ TRACEPOINT_EVENT(test, #undef TRACE_INCLUDE_PATH #define TRACE_INCLUDE_PATH . #define TRACE_INCLUDE_FILE trace_event_test -#include +#include diff --git a/tests/tracepoint/benchmark/tracepoint_benchmark.h b/tests/tracepoint/benchmark/tracepoint_benchmark.h index c5301d50..3b735ff2 100644 --- a/tests/tracepoint/benchmark/tracepoint_benchmark.h +++ b/tests/tracepoint/benchmark/tracepoint_benchmark.h @@ -37,4 +37,4 @@ TRACEPOINT_EVENT(ust_event, #define TRACE_INCLUDE_FILE tracepoint_benchmark /* This part must be outside protection */ -#include +#include -- 2.34.1