[Bug translator/6702] combination of "probe ... if()" and argument refering at return probe causes array overflow error.
fche at redhat dot com
sourceware-bugzilla@sourceware.org
Fri Jun 27 16:37:00 GMT 2008
------- Additional Comments From fche at redhat dot com 2008-06-27 16:10 -------
What we have here is a conflict between the rewriting of the
probe ... if () {}
block and the
probe foo.*.return { $saved_variable }
block.
One possible fix would be to change the latter, so that the synthetic
probe foo.*.call { save_that_variable }
probe also gets the same "if ()" condition prepended. That way, the
data gathering probe is also skipped if the condition is false. That
sounds rather natural.
The code in tapsets.cxx:4070ish taht creates the new probe_point for
the synthetic probe should thusly:
- add ".call" to replace ".return" (to be a proper dual, considering
the possibility of inline functions)
- copy the incoming probe-point's condition expression over
--
http://sourceware.org/bugzilla/show_bug.cgi?id=6702
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
More information about the Systemtap
mailing list