Bug 125204 - Backtrace does not work from signalhandler
Summary: Backtrace does not work from signalhandler
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: gcc
Version: 3.0
Hardware: ia64
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2004-06-03 16:01 UTC by Otto Bruggeman
Modified: 2007-11-30 22:07 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2004-08-03 01:30:12 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Output of the test program (1.80 KB, text/plain)
2004-06-03 16:03 UTC, Otto Bruggeman
no flags Details
The test program (877 bytes, text/plain)
2004-06-03 16:04 UTC, Otto Bruggeman
no flags Details
Proposed patch that fixed this on SLES8 (21.63 KB, patch)
2004-06-03 16:06 UTC, Otto Bruggeman
no flags Details | Diff


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2004:385 0 normal SHIPPED_LIVE Updated gcc packages 2004-08-02 04:00:00 UTC

Description Otto Bruggeman 2004-06-03 16:01:22 UTC
Description of problem: 
The backtrace() function crashes somewhere in libgcc when called from 
a signal handler. 
 
Version-Release number of selected component (if applicable): 
gcc/libgcc 3.2.3-34 
 
How reproducible: 
Always 
 
Steps to Reproduce: 
1. run attached program (bt-test.c) 
   
Actual results: 
See attached file (output.txt) 
 
Expected results: 
No crashes inside the crashhandler 
 
Additional info: 
SuSE SLES8 had the same problem and I solved it by linking libgcc to 
libunwind.so (the package from David Mosberger from HP) so it uses 
the unwinding functions from libunwind. Attached you will find the 
patches I created for the gcc source rpm for SuSE, I hope they will 
apply properly to the gcc sources since the SuSE gcc was 3.2.2 and 
this is 3.2.3. But this will give you the idea to fix this. You need 
version 0.97 otherwise it will not work either (at least that was my 
experience with SuSE).

Comment 1 Otto Bruggeman 2004-06-03 16:03:33 UTC
Created attachment 100841 [details]
Output of the test program

Comment 2 Otto Bruggeman 2004-06-03 16:04:36 UTC
Created attachment 100842 [details]
The test program

Comment 3 Otto Bruggeman 2004-06-03 16:06:49 UTC
Created attachment 100843 [details]
Proposed patch that fixed this on SLES8

Comment 4 Otto Bruggeman 2004-06-03 16:07:50 UTC
Version 0.97 of libunwind that is. 

Comment 6 Jakub Jelinek 2004-06-19 08:09:59 UTC
ftp://people.redhat.com/jakub/glibc/errata/3.2.3-37/

Comment 7 Otto Bruggeman 2004-07-08 16:40:59 UTC
We have finally tested this (lack of system to test on) and it works 
perfectly according to me and some of my colleagues. Thanks for 
fixing it ! Now we just need to know when we can expect this patch to 
appear somewhere in a service pack/quarterly update/hotfix/whatever.  

Comment 8 Jay Turner 2004-08-03 01:30:12 UTC
An errata 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 the 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-2004-385.html



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