Bug 442888
Summary: | gdb terminates with a segfault when stepping though a test application | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 4 | Reporter: | Steve <sfernand> | ||||||||
Component: | gdb | Assignee: | Jan Kratochvil <jan.kratochvil> | ||||||||
Status: | CLOSED ERRATA | QA Contact: | |||||||||
Severity: | medium | Docs Contact: | |||||||||
Priority: | medium | ||||||||||
Version: | 4.6 | CC: | alanm, ebachalo, marcobillpeter, pmuller, tao | ||||||||
Target Milestone: | rc | ||||||||||
Target Release: | --- | ||||||||||
Hardware: | All | ||||||||||
OS: | Linux | ||||||||||
Whiteboard: | |||||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||||
Doc Text: |
* Debugging code compiled by the default C compiler of RHEL-4 (gcc) could cause a GDB segmentation fault if a SYMBOL_LOCATION_BATON was undefined. The updated GDB writes an error message and continues to run. Such code can be debugged correctly by using the alternative RHEL-4 C compiler gcc4.
|
Story Points: | --- | ||||||||
Clone Of: | Environment: | ||||||||||
Last Closed: | 2009-05-18 20:33:29 UTC | Type: | --- | ||||||||
Regression: | --- | Mount Type: | --- | ||||||||
Documentation: | --- | CRM: | |||||||||
Verified Versions: | Category: | --- | |||||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||
Embargoed: | |||||||||||
Bug Depends On: | |||||||||||
Bug Blocks: | 409961 | ||||||||||
Attachments: |
|
Description
Steve
2008-04-17 12:45:49 UTC
Created attachment 302740 [details]
core file generated by rhel4.6 gdb (gdb-6.3.0.0)
Created attachment 302741 [details]
core file generated by upstream gdb (gdb-6.7.1)
Created attachment 302742 [details]
debug information extracted from the application
output of the following commands:
$ readelf -a <executable used to generate core>
$ readelf -w <executable used to generate core>
$ gdb <executable used to generate core>
.....
<get to the point just before the segmentation fault occurs>
.....
(gdb) maintenance check-symtabs
.....
(gdb) maintenance info symtabs
As it is no longer reproducible with current GCCs and it would be nice to check how it is fixed upstream I would prefer some core file I could use for a better analysis. The core file must be accompanied with its binary + sources. Both provided core files are for custom built binaries so I cannot use them in any way (without disassembling the code by hand). The core file marked as: core file generated by rhel4.6 gdb (gdb-6.3.0.0) is for a custom build: Core was generated by `/home/watayasu/rpm/BUILD/gdb-6.3/gdb/gdb ./TestDriver_DBG'. and it was verified it is not matching either rhel4u4 or rhel4u6 Red Hat binary. Please either supply also the whole directory /home/watayasu/rpm/BUILD/gdb-6.3 or provide a core file from some Red Hat supplied /usr/bin/gdb. I could try to undo the patch for GCC and it would be better reproducible from your system, thanks. This GDB version should no longer crash: http://people.redhat.com/jkratoch/rh442888/ and the patch was applied upstream: http://sourceware.org/ml/gdb-patches/2008-04/msg00628.html http://sourceware.org/ml/gdb-cvs/2008-05/msg00051.html Still GDB will still not provide a correct debug info as it will just print: Could not find the frame base for ... Because it is wrongly generated by GCC there. Have you tried `gcc4' instead? This request was evaluated by Red Hat Product Management for inclusion, but this component is not scheduled to be updated in the current Red Hat Enterprise Linux release. If you would like this request to be reviewed for the next minor release, ask your support representative to set the next rhel-x.y flag to "?". Release note added. If any revisions are required, please set the "requires_release_notes" flag to "?" and edit the "Release Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: * Debugging code compiled by the default C compiler of RHEL-4 (gcc) could cause a GDB segmentation fault if a SYMBOL_LOCATION_BATON was undefined. The updated GDB writes an error message and continues to run. Such code can be debugged correctly by using the alternative RHEL-4 C compiler gcc4. The Release note text has been updated. New Contents: * Debugging code compiled by the default C compiler of RHEL-4 (gcc) could cause a GDB segmentation fault if the debugging information incorrectly references a frame base which is not being defined by this debugging information. The updated GDB writes an error message and continues to run. Such code can be debugged correctly by using the alternative RHEL-4 C compiler gcc4. 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-2009-1015.html |