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 runtime/22031] failure in pthread_stacks.exp


https://sourceware.org/bugzilla/show_bug.cgi?id=22031

--- Comment #1 from David Smith <dsmith at redhat dot com> ---
In the current code, stap -p3 does the following to get the value of
$__default_pthread_attr:

  l->__retvalue = uderef(8, (((int64_t)214200LL)));

Using a pre-bpf stap, I see the following:

====
  {
    uintptr_t addr;
    { // DWARF expression: 0x3(214168)
      {
        uintptr_t s0;
        s0 = /* pragma:vma */({ unsigned long addr = 0; addr =
_stp_umodule_relocate ("/usr/lib64/libpthread-2.17.so",0x34498, current); addr;
});
        addr = s0;
      }
    }
    { // DWARF expression: 0x23(32)
      {
        uintptr_t s0;
        s0 = addr;
        s0 = s0 + 32UL;
        addr = s0;
      }
    }
    { uint64_t value = deref (8, addr); STAP_RETVALUE = value; }
====

It looks like the current code forgot to relocate the module. They are both
trying to read the same offset, just the pre-bpf code relocates libpthread
first.

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

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