This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug translator/5899] $ptr->member in return probe
- From: "jkenisto at us dot ibm dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sources dot redhat dot com
- Date: 11 Mar 2008 20:19:21 -0000
- Subject: [Bug translator/5899] $ptr->member in return probe
- References: <20080308010658.5899.jkenisto@us.ibm.com>
- Reply-to: sourceware-bugzilla at sourceware dot org
------- Additional Comments From jkenisto at us dot ibm dot com 2008-03-11 20:19 -------
(In reply to comment #1)
> I think bug #5634 can solve this issue as below:
> $ptr("struct argument")->member
>
That feature would be useful in general, but I'm not sure how it solves this
problem. Are you suggesting something like this?
probe kernel.function("myfunc").return
{
printf("foo->bar on entry was %d\n", $foo->bar);
foo2 = $foo
printf("foo->bar on return was %d\n", foo2("struct foo_struct")->bar);
}
I don't think it would be obvious to the average user that $foo->bar gets
evaluated at function entry, but foo2("struct foo_struct")->bar doesn't.
BTW, I said "If I want entry_value($ptr->member), I can just save that value
during my entry probe." That's kind of optimistic. The problem is, WHERE would
I save that value, so I know it belongs to this particular function instance?
Yeah, I could create an associative array indexed by task and (say) stack
pointer (in case of recursion), but that's what this feature was created to
avoid. In any case, that's just more evidence that we need to get this feature
right.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=5899
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.