[lttng-dev] SIGSEGV __event_probe, C++ application (static linking)
Dilong Zheng
Dilong.Zheng at mitel.com
Mon Jul 13 16:37:01 EDT 2015
Hi,
I have instrumented a C++ application with user space tracepoints. When I run the application and do a: "lttng list -u" command, I am able to see all my available tracepoints for the application. However when I enable those user space tracepoints and then start the trace, a core gets dumped and examining the core file in gdb I see the following error:
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00000000 in ?? ()
...
(gdb) bt
#0 0x00000000 in ?? ()
#1 0x08dd1088 in __event_probe__mike___sem_wait_entry (__tp_data=0xef92d818)
at /localhome/zhengd/override_mcd/System/SS_Inc/./sem_wrapper.h:67
#2 0x08dd44d9 in __tracepoint_cb_mike___sem_wait_entry () at /localhome/zhengd/override_mc /System/SS_Inc/sem_wrapper.h:67
#3 __wrap_sem_wait (sem=0xf43014c8) at /localhome/zhengd/override_mcd/System/System_Services/SysServices_Linux/SystemLinux.cpp:1877
Contextual Information: I would like to trace all calls to sem_wait() in my application. I am simply using a wrapper sem_wait function where I can place tracepoint() calls. Here's what the sem_wait wrapper looks like:
extern "C" int __real_sem_wait(sem_t*);
extern "C" int __wrap_sem_wait(sem_t* sem)
{
tracepoint(mike, sem_wait_entry);
int ret = __real_sem_wait(sem);
tracepoint(mike, sem_wait_exit, ret);
return ret;
}
Here is the TRACEPOINT_EVENT macro found in my tracepoint provider header file (which was generated using lttng-gen-tp command line utility):
TRACEPOINT_EVENT(mike,
sem_wait_entry,
TP_ARGS(),
TP_FIELDS()
)
And I am statically linking by using an existing CPP file (file with the __wrap_sem_wait() function) to create probes. I would just like to know any possible reasons why this error may be happening given the above mentioned circumstances and what I may be able to try in order to fix this.
Thanks,
Dilong
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lttng.org/pipermail/lttng-dev/attachments/20150713/1228f6a5/attachment.html>
More information about the lttng-dev
mailing list