Bug 549735 - extract __abort_msg from cores
Summary: extract __abort_msg from cores
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: abrt
Version: rawhide
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Jiri Moskovcak
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-12-22 14:29 UTC by Matthias Clasen
Modified: 2015-02-01 22:50 UTC (History)
8 users (show)

Fixed In Version: 1.0.6-1.fc12
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-02-09 21:03:21 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Matthias Clasen 2009-12-22 14:29:41 UTC
Recent glibc (2.11, in current rawhide) store assertion messages into the variable __abort_msg before aborting. This is very useful information that abrt should extract and place prominently in the bug report.

Soon glib's g_assert facility will employ the same mechanism. 
See https://bugzilla.gnome.org/show_bug.cgi?id=594872


Here is how it works:

[mclasen@planemask Desktop]$ cat test.c
#include <assert.h>

int main (int argc, char *argv[])
{
  assert (1 < 0);
}

[mclasen@planemask Desktop]$ make test
cc     test.c   -o test

[mclasen@planemask Desktop]$ ./test
test: test.c:5: main: Assertion `1 < 0' failed.
Aborted (core dumped)

[mclasen@planemask Desktop]$ gdb --batch --ex 'print (char*) __abort_msg' ./test core.3618 
Core was generated by `./test'.
Program terminated with signal 6, Aborted.
#0  0x0000003addc326c5 in raise (sig=<value optimized out>)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
64	  return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);
$1 = 0x1fe2080 "test: test.c:5: main: Assertion `1 < 0' failed.\n"

Comment 1 Denys Vlasenko 2010-01-18 16:15:05 UTC
Done so in git, will be in 1.0.4

Comment 2 Fedora Update System 2010-01-22 15:30:06 UTC
abrt-1.0.4-1.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/abrt-1.0.4-1.fc12

Comment 3 Matthias Clasen 2010-01-25 23:31:09 UTC
Thanks for implementing this !

Unfortunately, it turns out that making glib2 use the variable for its assertion messages does not work out (since the glibc symbol is marked as GLIBC_PRIVATE, and rpm won't let us add a dependency against such symbols to glib2). Therefore, glib2 will have to use its own variable, __glib_assert_msg, for this purpose. Can I ask you to include that variable in abrt reports as well, at least for binaries that link against libglib-2.0.so ?

Comment 4 Fedora Update System 2010-01-26 01:06:36 UTC
abrt-1.0.4-1.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 5 Matthias Clasen 2010-01-27 15:10:19 UTC
Hmm, reopening again. See comment 3.

Comment 6 Matthias Clasen 2010-01-27 15:17:58 UTC
Just to clarify:

in current rawhide, assert() and friends in glibc store their message in __assert_msg, while g_assert() and friends in glib2 store their message in __glib_assert_msg. We are currently investigating if we can somehow make glib use __assert_msg in some other way.

Comment 7 Denys Vlasenko 2010-01-29 15:55:43 UTC
Waitasec. Is it __assert_msg or __abort_msg?

Comment 8 Matthias Clasen 2010-01-29 18:15:37 UTC
__abort_msg and __glib_assert_msg are the correct names. Sorry for the confusion.

Comment 9 Denys Vlasenko 2010-02-03 11:56:52 UTC
fixed in git.

Comment 10 Fedora Update System 2010-02-03 15:17:47 UTC
abrt-1.0.6-1.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/abrt-1.0.6-1.fc12

Comment 11 Fedora Update System 2010-02-05 01:32:10 UTC
abrt-1.0.6-1.fc12 has been pushed to the Fedora 12 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update abrt'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F12/FEDORA-2010-1470

Comment 12 Fedora Update System 2010-02-09 21:02:14 UTC
abrt-1.0.6-1.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.


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