This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Indirect functions not being resolved in libraries
- From: "Alexander M. Hoole" <alexander dot hoole at ece dot uvic dot ca>
- To: <systemtap at sourceware dot org>
- Date: Tue, 23 Jul 2013 18:54:48 -0700
- Subject: Indirect functions not being resolved in libraries
- Reply-to: <alexander dot hoole at ece dot uvic dot ca>
Hi everyone,
Has anyone tried to put probe points on libraries where the function is
defined in the symbol table as an indirect function?
For, example:
....
# stap -g -v -e 'probe process("/lib64/libc-2.17.so").function("printf") {
log("TEST") }'
....
Fails with the following message:
....
semantic error: while resolving probe point: identifier 'process' at
<input>:1:7
source: probe
process("/lib64/libc-2.17.so").function("gettimeofday") { log("TEST") }
^
semantic error: no match
....
According to the symbol table this is an indirect function:
...
# nm /lib64/libc-2.17.so
...
03bbdcad0f0 i gettimeofday
...
I am running some tests on Fedora 19 and have the debug information for the
libraries etc installed. This seems to be a problem with defined indirect
functions. For example, the following works fine:
...
# stap -g -v -e 'probe process("/lib64/libc-2.17.so").function("printf") {
log("TEST") }'
....
# nm /lib64/libc-2.17.so
...
0000003bbdc51dd0 T printf
...
I'm presently at a loss as to how to resolve this. Any help would be very
appreciated.
Best regards,
Alex
P.S.: The versions installed are as follows:
Installed Packages
systemtap.x86_64 2.2.1-1.fc19 @anaconda
systemtap-client.x86_64 2.2.1-1.fc19 @anaconda
systemtap-devel.x86_64 2.2.1-1.fc19 @anaconda
systemtap-initscript.x86_64 2.2.1-1.fc19 @fedora
systemtap-runtime.x86_64 2.2.1-1.fc19 @anaconda
systemtap-runtime-java.x86_64 2.2.1-1.fc19 @fedora
systemtap-sdt-devel.x86_64 2.2.1-1.fc19 @anaconda