Bug 5076 - detect both inlined and non-inlined function instances
Summary: detect both inlined and non-inlined function instances
Status: RESOLVED FIXED
Alias: None
Product: systemtap
Classification: Unclassified
Component: translator (show other bugs)
Version: unspecified
: P2 normal
Target Milestone: ---
Assignee: Unassigned
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-09-28 17:39 UTC by Frank Ch. Eigler
Modified: 2010-09-27 14:22 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Frank Ch. Eigler 2007-09-28 17:39:27 UTC
See http://sourceware.org/ml/systemtap/2007-q3/msg00726.html

We need to warn or fail upon a .return probe of a function that is inlined
in some cases and not inlined in others.
Comment 1 Frank Ch. Eigler 2008-06-11 14:25:16 UTC
Maybe the solution to this one is to accept (and confirm) that .function.call and
.function.return probes match up, rather than .function and .function.return.

Any extras (inlined instances) would not show up under .call, so they should not
need special treatment like warnings/etc. for .return probes.
Comment 2 Frank Ch. Eigler 2010-09-27 14:22:57 UTC
This issue appears to have been fixed in several different ways,
including by warnings for inline-.return probes.  As for the originally
reported test case, we do accept the .return probe on the non-inlined
copy of the function.

% stap -p2 -e 'probe module("nfs").function("nfs_check_flags").return {
println($return) }'
# functions
_dwarf_tvar_get_return_0:long ()
# probes
module("nfs").function("nfs_check_flags@fs/nfs/file.c:107").return /*
pc=.text+0x5040 */ /* <- module("nfs").function("nfs_check_flags").return */