This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: CentOS cannot trace /lib64/ld-2.5.so library


Mandar Gurav <mandarwce@gmail.com> writes:

> [...]
> I am new to Systemtap. I have installed and tested the systemtap
> successfully. I got some of my simple scripts running.

Great.

> I can trace/probe all user defined functions in my C program. But now
> I wanted to trace/probe the any external library calls for my C
> program.

We don't have a compact syntax for that, but in principle it'd be
possible to place a probe at external references from the .dynamic
section.  This is somewhat related to our http://sourceware.org/PR6880
but not quite, so I'll file a new one.

> I googled for some information. And got reference of "Dynamic loader"
> for linux - "/lib64/ld-2.5.so" this library is responsible for loading
> of external symbols/functions.

Right.

> probe process("/lib64/ld-linux-x86-64.so.2").function("dlopen")
> [...]

Probing dlopen will get you a smaller set of events: when a shared
library is explicitly loaded by an app.  You might want to try
instead, to probe the first call to any shared-library symbol
in the target process.

probe ("/lib/ld-linux.so.2").function("_dl_lookup_symbol_x") {
      log(user_string($undef_name))
}

> WARNING: cannot find module /lib64/ld-2.5.so debuginfo: No DWARF
> information found

That means you need the right glibc-debuginfo RPM.

> But i have already installed "glibc-2.5-49.el5_5.7.x86_64 ".

Try "debuginfo-install glibc".

- FChE


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]