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/11809] New: struct parameter gives DWARF stack underflow


$ stap -e 'probe kernel.function("next_tgid").call { println($iter->tgid) }' -p2
semantic error: stack underflow in DWARF expression [0] at 0 (0x93: 8, 0):
identifier '$iter' at <input>:1:51
        source: probe kernel.function("next_tgid").call { println($iter->tgid) }
                                                                  ^
Pass 2: analysis failed.  Try again with another '--vp 01' option.

This is thrown from:
#0  0x00000038846bcd00 in __cxa_throw () from /usr/lib64/libstdc++.so.6
#1  0x0000000000586a53 in dwflpp::loc2c_error (
    fmt=0x5c8318 "%s in DWARF expression [%Zu] at %lu (%#x: %ld, %ld)") at
../dwflpp.cxx:1528
#2  0x0000000000537256 in lose (pool=0x7fffffffa4d0, fail=<value optimized out>, 
    fail_arg=<value optimized out>, emit_address=<value optimized out>, 
    indent=<value optimized out>, dwbias=0, attr=0x7fffffffa590, expr=0x30ed780,
len=3, 
    address=18446744071580198847, input=0x7fffffffa688, fb_attr=0x7fffffffa5b0,
cfa_ops=0x3204f40)
    at ../loc2c.c:155
#3  location_from_address (pool=0x7fffffffa4d0, fail=<value optimized out>, 
    fail_arg=<value optimized out>, emit_address=<value optimized out>, 
    indent=<value optimized out>, dwbias=0, attr=0x7fffffffa590, expr=0x30ed780,
len=3, 
    address=18446744071580198847, input=0x7fffffffa688, fb_attr=0x7fffffffa5b0,
cfa_ops=0x3204f40)
    at ../loc2c.c:756
#4  0x00000000005889c2 in dwflpp::translate_location (this=0x1ae04d0,
pool=0x7fffffffa4d0, 
    attr=0x7fffffffa590, pc=18446744071580198847, fb_attr=0x7fffffffa5b0,
tail=0x7fffffffa688, 
    e=0x31021e0) at ../dwflpp.cxx:1801
#5  0x000000000058cf1a in dwflpp::literal_stmt_for_local (this=0x1ae04d0, 
    scopes=std::vector of length 2, capacity 2 = {...}, pc=18446744071580198847,
local="iter", 
    e=0x31021e0, lvalue=false, ty=@0x3101fc8) at ../dwflpp.cxx:2378

That is before any members are even attempted.

This is possibly related to PR11808, though the symptoms are different.  This is
on kernel-2.6.33.6-147.fc13.x86_64 in fs/proc/base.c:

2822 struct tgid_iter {
2823         unsigned int tgid;
2824         struct task_struct *task;
2825 };
2826 static struct tgid_iter next_tgid(struct pid_namespace *ns, struct
tgid_iter iter)

-- 
           Summary: struct parameter gives DWARF stack underflow
           Product: systemtap
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: translator
        AssignedTo: systemtap at sources dot redhat dot com
        ReportedBy: jistone at redhat dot com


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

------- 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]