Bug 729001 - Debug file missing in debuginfo package for a binary
Debug file missing in debuginfo package for a binary
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: nfs-utils (Show other bugs)
6.3
Unspecified Unspecified
unspecified Severity unspecified
: rc
: ---
Assigned To: Steve Dickson
yanfu,wang
:
Depends On:
Blocks: 727919 743047
  Show dependency treegraph
 
Reported: 2011-08-08 11:18 EDT by Karel Klíč
Modified: 2013-03-03 18:03 EST (History)
1 user (show)

See Also:
Fixed In Version: nfs-utils-1.2.3-12.el6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2011-12-06 13:54:10 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Karel Klíč 2011-08-08 11:18:59 EDT
A problem related to debuginfo was found in the nfs-utils-1.2.3-7.el6 package. This issue might affect crash analysis done by Automatic Bug Reporting Tool and its retrace server, and also prevent proper debugging of crashes via GDB.

A debuginfo file for a binary is not present in the debuginfo package. This might be caused by:
 - binary being compiled without debugging information
 - debugging information being removed from the binary by a build script
 - rpmbuild failing to extract debugging information from a binary in a buildroot because of permissions (eg. suid binaries, binaries without executable flag set)

affected binary: /usr/sbin/rpcdebug
affected package: nfs-utils-1.2.3-7.el6.i686
binary doesn't contain debug sections (it was probably stripped)
affected binary file mode: 100755

This issue can be investigated by using eu-readelf tool from the elfutils package. Use `eu-readelf --notes /path/to/binary` to get build ID of a binary. Then check that the debuginfo package does not contain /usr/lib/debug/.build-id/<aa>/<bbbbbbbb>, where <aa> are the first two chars of the build ID, and <bbbbbbbb> is the rest of it. It should be a symlink pointing back to the binary.

(This bug was detected and filed by a script.)
Comment 2 Steve Dickson 2011-08-15 09:39:26 EDT
(In reply to comment #0)
> A problem related to debuginfo was found in the nfs-utils-1.2.3-7.el6 package.
> This issue might affect crash analysis done by Automatic Bug Reporting Tool and
> its retrace server, and also prevent proper debugging of crashes via GDB.
> 
> A debuginfo file for a binary is not present in the debuginfo package. This
> might be caused by:
>  - binary being compiled without debugging information
>  - debugging information being removed from the binary by a build script
>  - rpmbuild failing to extract debugging information from a binary in a
> buildroot because of permissions (eg. suid binaries, binaries without
> executable flag set)
> 
> affected binary: /usr/sbin/rpcdebug
> affected package: nfs-utils-1.2.3-7.el6.i686
> binary doesn't contain debug sections (it was probably stripped)
> affected binary file mode: 100755
> 
> This issue can be investigated by using eu-readelf tool from the elfutils
> package. Use `eu-readelf --notes /path/to/binary` to get build ID of a binary.
> Then check that the debuginfo package does not contain
> /usr/lib/debug/.build-id/<aa>/<bbbbbbbb>, where <aa> are the first two chars of
> the build ID, and <bbbbbbbb> is the rest of it. It should be a symlink pointing
> back to the binary.
> 
> (This bug was detected and filed by a script.)
So what need to happen?
Comment 3 Karel Klíč 2011-09-12 13:12:19 EDT
rpcdebug tool is being installed in the nfs-utils.spec %install section:

install -s -m 755 tools/rpcdebug/rpcdebug $RPM_BUILD_ROOT/usr/sbin

The '-s' option causes the binary to be stripped of debugging information during the install. Please remove the '-s' option there.
Comment 5 yanfu,wang 2011-10-09 03:11:02 EDT
reproduced on nfs-utils-1.2.3-7.el6:
.live.[root@x86-64-6s-m1 ~]# rpm -qa|grep nfs-utils
nfs-utils-1.2.3-7.el6.x86_64
nfs-utils-lib-devel-1.1.5-3.el6.x86_64
nfs-utils-lib-1.1.5-3.el6.x86_64
nfs-utils-lib-debuginfo-1.1.5-3.el6.x86_64

.live.[root@x86-64-6s-m1 ~]# eu-readelf --notes /usr/sbin/rpcdebug

Note section [ 2] '.note.ABI-tag' of 32 bytes at offset 0x21c:
  Owner          Data size  Type
  GNU                   16  VERSION
    OS: Linux, ABI: 2.6.18

Note section [ 3] '.note.gnu.build-id' of 36 bytes at offset 0x23c:
  Owner          Data size  Type
  GNU                   20  GNU_BUILD_ID
    Build ID: 16550087196a3eba2cfb1fcc2b6cfc5ae2bcd7d5

.live.[root@x86-64-6s-m1 ~]# ls -la /usr/lib/debug/.build-id/16/550087196a3eba2cfb1fcc2b6cfc5ae2bcd7d5
ls: cannot access /usr/lib/debug/.build-id/16/550087196a3eba2cfb1fcc2b6cfc5ae2bcd7d5: No such file or directory


verified on nfs-utils-1.2.3-12.el6:
[root@hp-xw4550-01 ~]# eu-readelf --notes /usr/sbin/rpcdebug

Note section [ 2] '.note.ABI-tag' of 32 bytes at offset 0x148:
  Owner          Data size  Type
  GNU                   16  VERSION
    OS: Linux, ABI: 2.6.18

Note section [ 3] '.note.gnu.build-id' of 36 bytes at offset 0x168:
  Owner          Data size  Type
  GNU                   20  GNU_BUILD_ID
    Build ID: 1181c7750458b71c1c4421887dd40c2bc2de9c9a

[root@hp-xw4550-01 ~]# ls -l /usr/lib/debug/.build-id/11/81c7750458b71c1c4421887dd40c2bc2de9c9a
lrwxrwxrwx. 1 root root 25 10月  9 03:05 /usr/lib/debug/.build-id/11/81c7750458b71c1c4421887dd40c2bc2de9c9a -> ../../../../sbin/rpcdebug

and do code review to check the '-s' option had been removed in the nfs-utils.spec %install section:
install -m 755 tools/rpcdebug/rpcdebug $RPM_BUILD_ROOT/usr/sbin
Comment 6 errata-xmlrpc 2011-12-06 13:54:10 EST
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2011-1534.html

Note You need to log in before you can comment on or make changes to this bug.