#define TRACEPOINT_DEFINE
#define TRACEPOINT_CREATE_PROBES
+#define TP_IP_PARAM ip
#include "ust_pthread.h"
static __thread int thread_in_trace;
}
thread_in_trace = 1;
- tracepoint(ust_pthread, pthread_mutex_lock_req, mutex);
+ tracepoint(ust_pthread, pthread_mutex_lock_req, mutex,
+ __builtin_return_address(0));
retval = mutex_lock(mutex);
- tracepoint(ust_pthread, pthread_mutex_lock_acq, mutex, retval);
+ tracepoint(ust_pthread, pthread_mutex_lock_acq, mutex, retval,
+ __builtin_return_address(0));
thread_in_trace = 0;
return retval;
}
thread_in_trace = 1;
retval = mutex_trylock(mutex);
- tracepoint(ust_pthread, pthread_mutex_trylock, mutex, retval);
+ tracepoint(ust_pthread, pthread_mutex_trylock, mutex, retval,
+ __builtin_return_address(0));
thread_in_trace = 0;
return retval;
}
thread_in_trace = 1;
retval = mutex_unlock(mutex);
- tracepoint(ust_pthread, pthread_mutex_unlock, mutex, retval);
+ tracepoint(ust_pthread, pthread_mutex_unlock, mutex, retval,
+ __builtin_return_address(0));
thread_in_trace = 0;
return retval;
}
#include <lttng/tracepoint.h>
TRACEPOINT_EVENT(ust_pthread, pthread_mutex_lock_req,
- TP_ARGS(pthread_mutex_t *, mutex),
+ TP_ARGS(pthread_mutex_t *, mutex, void *, ip),
TP_FIELDS(
ctf_integer_hex(void *, mutex, mutex)
)
)
TRACEPOINT_EVENT(ust_pthread, pthread_mutex_lock_acq,
- TP_ARGS(pthread_mutex_t *, mutex, int, status),
+ TP_ARGS(pthread_mutex_t *, mutex, int, status, void *, ip),
TP_FIELDS(
ctf_integer_hex(void *, mutex, mutex)
ctf_integer(int, status, status)
)
TRACEPOINT_EVENT(ust_pthread, pthread_mutex_trylock,
- TP_ARGS(pthread_mutex_t *, mutex, int, status),
+ TP_ARGS(pthread_mutex_t *, mutex, int, status, void *, ip),
TP_FIELDS(
ctf_integer_hex(void *, mutex, mutex)
ctf_integer(int, status, status)
)
TRACEPOINT_EVENT(ust_pthread, pthread_mutex_unlock,
- TP_ARGS(pthread_mutex_t *, mutex, int, status),
+ TP_ARGS(pthread_mutex_t *, mutex, int, status, void *, ip),
TP_FIELDS(
ctf_integer_hex(void *, mutex, mutex)
ctf_integer(int, status, status)