Questions about tracing static function and statement probe

Frank Ch. Eigler fche@redhat.com
Tue Jul 17 23:18:00 GMT 2007


Hi -

On Tue, Jul 17, 2007 at 09:49:54AM +0800, sunzen w. wrote:
> [...]
> Naturally get_transaction is not an inline function. It seems that it
> has been converted to inline function by Gcc. Is there a way to
> disable the automatic conversion?

You might try adding "-fno-inline-functions-called-once" to the CFLAGS.

> [...]  But as the second problem i described, statement probe also
> doesn't work. Do I miss some thing?

The placement of statement probes is tricky.  If you have

FILE.c:
1: function foo (arg1) { /* inlined */ }
2: 
3: function bar () {
4:   expr=zoo
5:   foo (expr)
6:   baz (expr)
7: }

You would prefer to put in a 
   probe XXX.function("foo") {$arg1}
but may have to do instead
   probe XXX.statement("*@FILE.c:5") {$expr}

- FChE
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/systemtap/attachments/20070717/fd4996ea/attachment.sig>


More information about the Systemtap mailing list