Comment 5 for bug 415424

Revision history for this message
Alex Bennée (ajbennee) wrote :

It could be this only affects the Hardy packages? Or maybe something more subtle?

As you say GDB should complain but it certainly doesn't seem fussy:

vnms@vnms:~$ gdb /usr/bin/gnome-terminal
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu"...
(no debugging symbols found)
(gdb) symbol-file /usr/lib/debug/usr/lib/libcairo.so.2.17.3
Reading symbols from /usr/lib/debug/usr/lib/libcairo.so.2.17.3...done.

I can manually examine the CRC32's of libcairo and libc debugs and compare with the debug_link sections in the elf files and see the same discrepancy oprofile does (ruling out oprofile getting it wrong).

vnms@vnms:~$ cfv -v -C -t csv /usr/lib/debug/usr/lib/libcairo.so.2.17.3 /usr/lib/debug/lib/libc-2.7.so
/usr/lib/debug/lib/libc-2.7.so : OK (407169,9587b62d)
/usr/lib/debug/usr/lib/libcairo.so.2.17.3 : OK (1275263,9a3e25be)

vnms@vnms:~$ readelf -x 25 /usr/lib/libcairo.so.2.17.3

Hex dump of section '.gnu_debuglink':
  0x00000000 6c696263 6169726f 2e736f2e 322e3137 libcairo.so.2.17
  0x00000010 2e330000 fffcc72c .3.....,

vnms@vnms:~$ readelf -x 68 /lib/libc.so.6

Hex dump of section '.gnu_debuglink':
  0x00000000 6c696263 2d322e37 2e736f00 2db68795 libc-2.7.so.-...

I can only assume GDB is checking the build ID but I'm not sure how to check for that. Certainly there don't seem to any "notes" sections in the ELF file according to readelf. I've mailed the GDB mailing list to see how I can extract it.

If the build IDs match between the library and it's debug component I can only assume there is some weird bug in binutils that created an odd split debug section.