This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug translator/10820] New: stap -L should take varaible location list into account


Sometimes you believe a variable is available with -L, but then it turns out the
location list for that variable doesn't actually cover the address that we will
place the probe on.

For example:

$ stap -L 'kernel.function("tc_fill_tclass")'
kernel.function("tc_fill_tclass@net/sched/sch_api.c:990") $skb:struct sk_buff*
$q:struct Qdisc* $cl:long unsigned int $pid:u32 $seq:u32 $flags:u16 $event:int
$tcm:struct tcmsg* $nlh:struct nlmsghdr* $b:unsigned char* $d:struct gnet_dump
$cl_ops:struct Qdisc_class_ops*

But then when we try to actually query $tcm we get:
semantic error: not accessible at this address (0xffffffff80239505): identifier
'$tcm' at <input>:1:96
         source: probe kernel.function("tc_fill_tclass").return {
printf("pid=%d, cl=%d, tcm=%p.\n", $pid, $cl, $tcm-) }

Which is indeed correct, the location list for tcm says:

     0048393a ffffffff802395a2 ffffffff80239643 (DW_OP_reg6)
     0048393a ffffffff802396aa ffffffff80239719 (DW_OP_reg6)

So it isn't available at the (function entry) probe address.

-- 
           Summary: stap -L should take varaible location list into account
           Product: systemtap
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: translator
        AssignedTo: systemtap at sources dot redhat dot com
        ReportedBy: mjw at redhat dot com


http://sourceware.org/bugzilla/show_bug.cgi?id=10820

------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]