[lttng-dev] [PATCH] Fix: Don't (re)define STAP_PROBEV

Jonathan Rajotte Julien Jonathan.rajotte-julien at efficios.com
Wed Oct 14 13:29:56 EDT 2015


Hi Stelios,

Thanks for the patch!

Look's like it's for lttng-tools. Since there is multiple projects on 
the ML make sure to add the project
name to the patch email suffix next time.

It will ease the work of jgalar :P

For more info you can have a look at the contributor's guide here [1].

[1] https://lttng.org/community/

Cheers!

On 2015-10-14 12:31 PM, Stelios Bounanos wrote:
> Define a new LTTNG_STAP_PROBEV macro to avoid clobbering STAP_PROBEV or
> emitting unwanted sdt probes when lttng-ust has been built without sdt
> support.
>
> Signed-off-by: Stelios Bounanos <sb at enotty.net>
> ---
>
> Notes:
>      Tested by building doc/examples/hello-static-lib both --with-sdt and
>      --without-sdt.
>      
>      Programs that included sys/sdt.h after (for example) lttng/tracef.h
>      would get static probes for lttng tracepoints even if lttng-ust was
>      built without sdt support.  I'm guessing that this was unintended.
>
>   include/lttng/tracef.h     | 2 +-
>   include/lttng/tracelog.h   | 2 +-
>   include/lttng/tracepoint.h | 5 +++--
>   3 files changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/include/lttng/tracef.h b/include/lttng/tracef.h
> index 7e8b59e..0c59c9a 100644
> --- a/include/lttng/tracef.h
> +++ b/include/lttng/tracef.h
> @@ -34,7 +34,7 @@ void _lttng_ust_tracef(const char *fmt, ...);
>   
>   #define tracef(fmt, ...)						\
>   	do {								\
> -		STAP_PROBEV(tracepoint_lttng_ust_tracef, event, ## __VA_ARGS__); \
> +		LTTNG_STAP_PROBEV(tracepoint_lttng_ust_tracef, event, ## __VA_ARGS__); \
>   		if (caa_unlikely(__tracepoint_lttng_ust_tracef___event.state)) \
>   			_lttng_ust_tracef(fmt, ## __VA_ARGS__);		\
>   	} while (0)
> diff --git a/include/lttng/tracelog.h b/include/lttng/tracelog.h
> index 5f14f70..4309d12 100644
> --- a/include/lttng/tracelog.h
> +++ b/include/lttng/tracelog.h
> @@ -53,7 +53,7 @@ TP_TRACELOG_CB_TEMPLATE(TRACE_DEBUG);
>   
>   #define tracelog(level, fmt, ...)					\
>   	do {								\
> -		STAP_PROBEV(tracepoint_lttng_ust_tracelog, level, ## __VA_ARGS__); \
> +		LTTNG_STAP_PROBEV(tracepoint_lttng_ust_tracelog, level, ## __VA_ARGS__); \
>   		if (caa_unlikely(__tracepoint_lttng_ust_tracelog___##level.state)) \
>   			_lttng_ust_tracelog_##level(__FILE__, __LINE__, __func__, \
>   				fmt, ## __VA_ARGS__); \
> diff --git a/include/lttng/tracepoint.h b/include/lttng/tracepoint.h
> index 4bc4fc9..e88db89 100644
> --- a/include/lttng/tracepoint.h
> +++ b/include/lttng/tracepoint.h
> @@ -37,8 +37,9 @@
>   #ifdef LTTNG_UST_HAVE_SDT_INTEGRATION
>   #define SDT_USE_VARIADIC
>   #include <sys/sdt.h>
> +#define LTTNG_STAP_PROBEV STAP_PROBEV
>   #else
> -#define STAP_PROBEV(...)
> +#define LTTNG_STAP_PROBEV(...)
>   #endif
>   
>   #ifdef __cplusplus
> @@ -53,7 +54,7 @@ extern "C" {
>   
>   #define tracepoint(provider, name, ...)					    \
>   	do {								    \
> -		STAP_PROBEV(provider, name, ## __VA_ARGS__);		    \
> +		LTTNG_STAP_PROBEV(provider, name, ## __VA_ARGS__);	    \
>   		if (tracepoint_enabled(provider, name)) 		    \
>   			do_tracepoint(provider, name, __VA_ARGS__);	    \
>   	} while (0)

-- 
Jonathan R. Julien
Efficios




More information about the lttng-dev mailing list