}
retval = cur_alloc.malloc(size);
if (URCU_TLS(malloc_nesting) == 1) {
- tracepoint(ust_libc, malloc, size, retval);
+ tracepoint(ust_libc, malloc, size, retval, __builtin_return_address(0));
}
URCU_TLS(malloc_nesting)--;
return retval;
}
if (URCU_TLS(malloc_nesting) == 1) {
- tracepoint(ust_libc, free, ptr);
+ tracepoint(ust_libc, free, ptr, __builtin_return_address(0));
}
if (cur_alloc.free == NULL) {
}
retval = cur_alloc.calloc(nmemb, size);
if (URCU_TLS(malloc_nesting) == 1) {
- tracepoint(ust_libc, calloc, nmemb, size, retval);
+ tracepoint(ust_libc, calloc, nmemb, size, retval, __builtin_return_address(0));
}
URCU_TLS(malloc_nesting)--;
return retval;
retval = cur_alloc.realloc(ptr, size);
end:
if (URCU_TLS(malloc_nesting) == 1) {
- tracepoint(ust_libc, realloc, ptr, size, retval);
+ tracepoint(ust_libc, realloc, ptr, size, retval, __builtin_return_address(0));
}
URCU_TLS(malloc_nesting)--;
return retval;
}
retval = cur_alloc.memalign(alignment, size);
if (URCU_TLS(malloc_nesting) == 1) {
- tracepoint(ust_libc, memalign, alignment, size, retval);
+ tracepoint(ust_libc, memalign, alignment, size, retval, __builtin_return_address(0));
}
URCU_TLS(malloc_nesting)--;
return retval;
retval = cur_alloc.posix_memalign(memptr, alignment, size);
if (URCU_TLS(malloc_nesting) == 1) {
tracepoint(ust_libc, posix_memalign, *memptr, alignment, size,
- retval);
+ retval, __builtin_return_address(0));
}
URCU_TLS(malloc_nesting)--;
return retval;
#include <lttng/tracepoint.h>
TRACEPOINT_EVENT(ust_libc, malloc,
- TP_ARGS(size_t, size, void *, ptr),
+ TP_ARGS(size_t, size, void *, ptr, void *, caller),
TP_FIELDS(
ctf_integer(size_t, size, size)
ctf_integer_hex(void *, ptr, ptr)
+ ctf_integer_hex(void *, caller, caller)
)
)
TRACEPOINT_EVENT(ust_libc, free,
- TP_ARGS(void *, ptr),
+ TP_ARGS(void *, ptr, void *, caller),
TP_FIELDS(
ctf_integer_hex(void *, ptr, ptr)
+ ctf_integer_hex(void *, caller, caller)
)
)
TRACEPOINT_EVENT(ust_libc, calloc,
- TP_ARGS(size_t, nmemb, size_t, size, void *, ptr),
+ TP_ARGS(size_t, nmemb, size_t, size, void *, ptr, void *, caller),
TP_FIELDS(
ctf_integer(size_t, nmemb, nmemb)
ctf_integer(size_t, size, size)
ctf_integer_hex(void *, ptr, ptr)
+ ctf_integer_hex(void *, caller, caller)
)
)
TRACEPOINT_EVENT(ust_libc, realloc,
- TP_ARGS(void *, in_ptr, size_t, size, void *, ptr),
+ TP_ARGS(void *, in_ptr, size_t, size, void *, ptr, void *, caller),
TP_FIELDS(
ctf_integer_hex(void *, in_ptr, in_ptr)
ctf_integer(size_t, size, size)
ctf_integer_hex(void *, ptr, ptr)
+ ctf_integer_hex(void *, caller, caller)
)
)
TRACEPOINT_EVENT(ust_libc, memalign,
- TP_ARGS(size_t, alignment, size_t, size, void *, ptr),
+ TP_ARGS(size_t, alignment, size_t, size, void *, ptr, void *, caller),
TP_FIELDS(
ctf_integer(size_t, alignment, alignment)
ctf_integer(size_t, size, size)
ctf_integer_hex(void *, ptr, ptr)
+ ctf_integer_hex(void *, caller, caller)
)
)
TRACEPOINT_EVENT(ust_libc, posix_memalign,
- TP_ARGS(void *, out_ptr, size_t, alignment, size_t, size, int, result),
+ TP_ARGS(void *, out_ptr, size_t, alignment, size_t, size, int, result, void *, caller),
TP_FIELDS(
ctf_integer_hex(void *, out_ptr, out_ptr)
ctf_integer(size_t, alignment, alignment)
ctf_integer(size_t, size, size)
ctf_integer(int, result, result)
+ ctf_integer_hex(void *, caller, caller)
)
)