[Bug translator/17040] Probing inline *@srcfile:line finds the wrong context
jistone at redhat dot com
sourceware-bugzilla@sourceware.org
Mon Jun 9 18:35:00 GMT 2014
https://sourceware.org/bugzilla/show_bug.cgi?id=17040
--- Comment #1 from Josh Stone <jistone at redhat dot com> ---
With more stap verbosity, I see:
found the following lines for fs/file.c:
[...]
524 = ffffffff81206868
524 = ffffffff8120686f
524 = ffffffff81207282
524 = ffffffff8120734b
So there are actually 4 line records, but we're not trying the second. I think
that's probably fine, since there are only 3 inline instances at all.
I found that query_srcfile_line() is not matching the inlines for die_has_pc(),
but the outer function does match. The inline instances and their ranges are:
[1982111] inlined_subroutine
abstract_origin (ref4) [198145f]
entry_pc (addr) 0xffffffff8120686c
ranges (sec_offset) range list [10d7a0]
call_file (data1) 1
call_line (data2) 534
[10d7a0] 0xffffffff8120686c..0xffffffff8120686f
0xffffffff81206873..0xffffffff81206881
[198404d] inlined_subroutine
abstract_origin (ref4) [198145f]
low_pc (addr) 0xffffffff8120728a
high_pc (data8) 14 (0xffffffff81207298)
call_file (data1) 1
call_line (data2) 595
[1984332] inlined_subroutine
abstract_origin (ref4) [198145f]
entry_pc (addr) 0xffffffff81207341
ranges (sec_offset) range list [10dc30]
call_file (data1) 1
call_line (data2) 629
sibling (ref4) [19843c6]
[10dc30] 0xffffffff81207341..0xffffffff81207344
0xffffffff81207353..0xffffffff81207361
*None* of the line records fit in any of the function instances! This may be a
compiler debuginfo issue.
However, even if we can fix die_has_pc for the inline, I suspect we'll be back
to PR10603's case with *both* function and inline matching in
query_srcfile_line(). It may be tricky to figure out which one is the true
match to the srcfile:line we want. (It's probably not just innermost -
consider function -> inline -> inline where the middle one is the at the right
line.)
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the Systemtap
mailing list