From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.10) Gecko/20050822 Firefox/1.0.6 (Debian package 1.0.6-3) Description of problem: When using valgrind to detect errors in library code valgrind is able to extract less information from shared library's that have been prelinked. In particular some of the N_SLINE entries in the library are changed erronously by prelinking which means valgrind can no longer report memory accesses by line number but instead reports them by library name. For some (unknown) reason this only seems to happen when using our (www.quadrics.com) libarary's, I believe this is to do with the compile flags used in our releases and the length of functions that we use. Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1. prelink -a 2. valgrind tping Actual Results: You see errors listed my shared library name. Expected Results: You see errors listed by filename/line number. Additional info: You need a copy of our software to verify this as I've not found any default library's that can provoke it.
Created attachment 118504 [details] Patch that fixes the problem This patch fixes the problem for me and I haven't seen any side effects although I'm not a stabs expert.
Fix (slightly different) has been included in rawhide prelink. "For some (unknown) reason this only seems to happen when using our..." That reason is pretty clear, almost nobody uses Stabs these days, Dwarf3 is clearly superior and on some RHEL architectures the only one supported. Plus, all the libraries/binaries in the distro as well as packages built using rpm by default have debugging info stripped into separate files (*-debuginfo* subpackages). BTW, N_SLINE is absolute on some targets and relative on others, which is what lead to the "I'm not 100% sure about the following 3." comment. But it seems to be always relative on ELF Linux targets except Alpha (and on Alpha I think stabs are never used). If you wish this fix to be backported to RHEL4 U3+, you need to request that through your support contact, as there are no other prelink changes planned for RHEL4 U3 ATM.