+++ This bug was initially created as a clone of Bug #564429 +++ This is upsteam bug "Markers get a bad address in prelinked libraries" http://sourceware.org/bugzilla/show_bug.cgi?id=11173 Fix is already in upstream git, but just missed the 1.1 release If we don't make a new systemtap release then in addition of the above patch we will also need commit 87748e. commit 08d1d520616557f6ff7dd023e260ad6577e9e0e8 Author: Mark Wielaard <mjw> Date: Mon Jan 18 09:13:30 2010 +0100 PR11173 Markers get a bad address in prelinked libraries. Our literal_addr_to_sym_addr() function was just wrong. To compensate for raw addresses read from elf (either given by the user or through a mark transformation) we need to know what the elf_bias is (as returned by dwfl_module_getelf) before feeding them to any libdwfl functions. * tapsets.cxx (query_module_dwarf): Always add elf_bias to raw function or statement addresses before calling query_addr(). (query_addr): Don't call literal_addr_to_sym_addr(). * dwflpp.h (literal_addr_to_sym_addr): Removed. * dwflpp.cxx (literal_addr_to_sym_addr): Likewise. commit 87748e2b87e574d3c83866ccd0d83678c3c68d93 Author: Mark Wielaard <mjw> Date: Tue Feb 2 13:47:19 2010 +0100 Make sure cfa_ops are always retrieved through dwfl global address. dwflpp::translate_location() works on the dw address space, but get_cfa_ops() starts out with dwfl calls (only dwarf_cfi_addrframe() needs to be adjusted for bias). * dwflpp.cxx (translate_location): Pass pc plus module bias through to get_cfa_ops. (get_cfa_ops): Adjust for bias when calling dwarf_cfi_addrframe(), add frame start/end address when found if verbose logging. * testsuite/systemtap.exelib/lib.stp: Add $foo and $bar variables to process.function probes. * testsuite/systemtap.exelib/libmarkunamestack.stp: Likewise. * testsuite/systemtap.exelib/lib.tcl: Expect correct values for process.function probe variables. * testsuite/systemtap.exelib/libmarkunamestack.tcl: Likewise. That last patch relies on an elfutils fix: https://bugzilla.redhat.com/show_bug.cgi?id=546295
Patches in hand, needed for <sdt.h> instrumentation of user programs/libraries. (No RHEL5 package is built with these, AFAIK.)
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2010-0308.html