This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
put probes on a specific line
- From: Li Guanglei <guanglei at cn dot ibm dot com>
- To: "systemtap at sourceware dot org" <systemtap at sourceware dot org>
- Date: Tue, 10 Oct 2006 11:09:31 +0800
- Subject: put probes on a specific line
- Organization: IBM CSTL
Hi,
I ever thought that kernel.function("*@kernel/signal.c:734") will
put a probe on line 734. But after testing and reading the stapprobes
man page, that actually refers to any functions within the
"kernel/signal.c" file that span line 734, i.e, it equals to
kernel.function("send_signal"). So it seems to me the only way to put
probe on a specific line is to use kernel.statements(0x....). But this
is really troublesome and inconvenient for me. Sometimes I need to
visit some local variables and their valid location range is beyond
the function prologue, so using kernel.function(..@lineno) will
complain not finding that variable.
So I think it is really helpful if
kernel.function("*@kernel/signal.c:734") could act as I expected
before, that is, it will put a probe on line 734 of signal.c. Or else
SystemTap is of little help to probe somewhere inside a function and
visit some of its local variables, and I think these are important for
problem diagnosis.
- Guanglei