Bug 592523

Summary: Backtrace with very short crash thread is wrongly considered "unusable"
Product: [Fedora] Fedora Reporter: Matt McCutchen <matt>
Component: abrtAssignee: Karel Klíč <kklic>
Status: CLOSED NEXTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 12CC: anton, dvlasenk, iprikryl, jmoskovc, kklic, mnowak, npajkovs, rvokal, stephent98
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-10-25 10:33:07 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:

Description Matt McCutchen 2010-05-15 05:02:19 UTC
Description of problem:
In a C/C++ backtrace, if the crash thread has only four frames and the bottom one is the dummy frame under "clone", the backtrace will get a low rating and abrt will consider it unusable, even though all the information one could want is there.  Here is an example (I manually hacked abrt to allow me to report it as bug 592521):

Thread 1 (Thread 21446):
#0  0x00007f4dcf70c5e9 in jack_watchdog_thread (arg=0x22fe010) at engine.c:954
        engine = 0x22fe010
        timo = {tv_sec = 10, tv_nsec = 0}
#1  0x00007f4dcf062a3a in start_thread (arg=0x7f4dcf9e5710)
    at pthread_create.c:297
        __res = <value optimized out>
        pd = 0x7f4dcf9e5710
        now = <value optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {139972172470032, 
                -3132889451195097733, 140736863387184, 0, 0, 3, 
                3034901235276881275, 3034902406592896379}, 
              mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, 
            data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
        not_first_call = <value optimized out>
        sp = <value optimized out>
        freesize = <value optimized out>
#2  0x00007f4dcebbd62d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
No locals.
#3  0x0000000000000000 in ?? ()

The rating algorithm should be changed to avoid this outcome.  It may work to simply ignore frames with an address of zero.

Version-Release number of selected component (if applicable):
abrt-1.0.9-2.fc12.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Follow the steps in bug 592521 to trigger abrt.
2. Press "Report".

Actual results:
abrt says the backtrace is unusable and does not allow it to be reported.  It recommends installing the debuginfo, which does not help.

Expected results:
abrt allows reporting the backtrace.

Comment 1 Steve Tyler 2010-09-08 10:49:42 UTC
I had this problem too.

abrt told me a backtrace was "unusable" even though I installed all the symbols I could.

My workaround was to save the backtrace to file using the Logger and then manually open a bug with the backtrace as an attachment.

Bug 630100 - during logout gnome-panel killed by signal 11

Comment 2 Karel Klíč 2010-10-25 10:33:07 UTC
This bug is fixed in upstream git repository, which will become abrt-1.1.14 at
some point. The fix is a part of pretty intrusive change (rewriting a lot of code), and it is dangerous to update Fedora 12/13 with it (no decision about F-14 yet). Fedora 15 will contain the fix for sure.