Require C++11 for building probe providers with C++ compiler
[lttng-ust.git] / liblttng-ust-libc-wrapper / lttng-ust-pthread.c
index fd3af1105a961422e276671a483b18c81a80389a..7836ffa02175d7599e4472403964b1b1069f4c33 100644 (file)
  */
 
 #define _GNU_SOURCE
+/*
+ * Do _not_ define _LGPL_SOURCE because we don't want to create a
+ * circular dependency loop between this malloc wrapper, liburcu and
+ * libc.
+ */
 #include <lttng/ust-dlfcn.h>
+#include <helper.h>
 #include <pthread.h>
 
 #define TRACEPOINT_DEFINE
@@ -48,10 +54,10 @@ int pthread_mutex_lock(pthread_mutex_t *mutex)
 
        thread_in_trace = 1;
        tracepoint(lttng_ust_pthread, pthread_mutex_lock_req, mutex,
-               __builtin_return_address(0));
+               LTTNG_UST_CALLER_IP());
        retval = mutex_lock(mutex);
        tracepoint(lttng_ust_pthread, pthread_mutex_lock_acq, mutex,
-               retval, __builtin_return_address(0));
+               retval, LTTNG_UST_CALLER_IP());
        thread_in_trace = 0;
        return retval;
 }
@@ -78,7 +84,7 @@ int pthread_mutex_trylock(pthread_mutex_t *mutex)
        thread_in_trace = 1;
        retval = mutex_trylock(mutex);
        tracepoint(lttng_ust_pthread, pthread_mutex_trylock, mutex,
-               retval, __builtin_return_address(0));
+               retval, LTTNG_UST_CALLER_IP());
        thread_in_trace = 0;
        return retval;
 }
@@ -105,7 +111,7 @@ int pthread_mutex_unlock(pthread_mutex_t *mutex)
        thread_in_trace = 1;
        retval = mutex_unlock(mutex);
        tracepoint(lttng_ust_pthread, pthread_mutex_unlock, mutex,
-               retval, __builtin_return_address(0));
+               retval, LTTNG_UST_CALLER_IP());
        thread_in_trace = 0;
        return retval;
 }
This page took 0.025328 seconds and 4 git commands to generate.