Can't access argument of process marker
Frank Ch. Eigler
fche@redhat.com
Fri Jun 25 18:24:00 GMT 2010
Josh Stone <jistone@redhat.com> writes:
> [...]
> sdt_kprobe_var_expanding_visitor::visit_defined_op - just calls the
> parent class... harmless, but unnecessary.
>
> sdt_uprobe_var_expanding_visitor::visit_defined_op - leaves the
> defined_op untouched, without checking its argument. This means later
> it expands to "undefined" --> 0.
> [...]
One piece of background that may help explain this is that some of the
sdt.h options did not encode the actual number of arguments into the
.probe metadata, so stap couldn't actually tell how many arguments
there are supposed to be. Perhaps this is why it was thought
appropriate to short-circuit @defined() there.
In any case, this shortage of metadata is fixed with SDT_V2, which
stap usually forces on for itself. The translator-side code may not
have caught up.
- FChE
More information about the Systemtap
mailing list