Bug 845147 - gdb crashes when debugging X.org
Summary: gdb crashes when debugging X.org
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: gdb
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Jan Kratochvil
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-08-02 00:52 UTC by Dave Airlie
Modified: 2012-08-03 01:07 UTC (History)
5 users (show)

Fixed In Version: gdb-7.4.91.20120801-17.fc18
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-08-02 06:39:05 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Dave Airlie 2012-08-02 00:52:45 UTC
Description of problem:

a) debugging X.org in rawhide is impossible as gdb crashes when you try to run X.

b) attaching to X.org after it starts give a different problem, if you add a breakpoint and then hit next it craps out as well.

./../gdb/frame.c:2396: internal-error: frame_cleanup_after_sniffer: Assertion `frame->prologue_cache == NULL' failed.
A problem internal to GDB has been detected,

How reproducible:

everytime,

a) from ssh, gdb Xorg, r, gdb segfaults.

b) gdb Xorg `pidof Xorg`
break somepoint
hits breakpoint 
hit n
get frame.c error above.

Additional info:

A backtrace of gdb crashing running X.org inside gdb.
gdb) bt
#0  0x00000000005a18f2 in gdb_bfd_unref ()
#1  0x00000000005b9c7e in free_objfile ()
#2  0x00000000005b9f0c in free_objfile_separate_debug ()
#3  0x00000000005b9bdd in free_objfile ()
#4  0x0000000000654013 in update_solib_list_1.isra.0 ()
#5  0x0000000000654250 in update_solib_list.isra.1 ()
#6  0x0000000000654adf in solib_add ()
#7  0x000000000051b8ec in handle_solib_event ()
#8  0x000000000051bca5 in bpstat_stop_status ()
#9  0x0000000000576346 in handle_inferior_event ()
#10 0x00000000005781c2 in wait_for_inferior ()
#11 0x00000000005786d7 in proceed ()
#12 0x000000000056c334 in run_command_1 ()
#13 0x000000000063eaba in execute_command ()
#14 0x000000000058c7b4 in command_handler ()
#15 0x000000000058d18c in command_line_handler ()
#16 0x000000318242afdb in rl_callback_read_char () from /lib64/libreadline.so.6
#17 0x000000000058c819 in rl_callback_read_char_wrapper ()
#18 0x000000000058b606 in process_event ()
#19 0x000000000058bdaf in gdb_do_one_event ()
#20 0x000000000058bf35 in start_event_loop ()
#21 0x0000000000585453 in captured_command_loop ()
#22 0x000000000058412e in catch_errors ()
---Type <return> to continue, or q <return> to quit---
#23 0x0000000000586016 in captured_main ()
#24 0x000000000058412e in catch_errors ()
#25 0x0000000000586c74 in gdb_main ()

Comment 1 Jan Kratochvil 2012-08-02 06:39:05 UTC
The backtrace above I got yesterday so it is already fixed:
  gdb-7.4.91.20120801-17.fc18

The problem
./../gdb/frame.c:2396: internal-error: frame_cleanup_after_sniffer: Assertion `frame->prologue_cache == NULL' failed.

I have already seen in the past, AFAIK it is due to improper handling of CTRL-C at some moment, there were some fixes by Tom Tromey on trunk (not in Rawhide) but some reproducer would be needed.

Comment 2 Tom Tromey 2012-08-02 13:39:18 UTC
(In reply to comment #1)

> I have already seen in the past, AFAIK it is due to improper handling of
> CTRL-C at some moment, there were some fixes by Tom Tromey on trunk (not in
> Rawhide) but some reproducer would be needed.

My current patches probably wouldn't affect this.
The upstream bug is http://sourceware.org/bugzilla/show_bug.cgi?id=14100
I'll look at it a bit today.

Comment 3 Dave Airlie 2012-08-03 01:07:58 UTC
Okay the frame one is probably ctrl-c causing the actual problem, however I hit next and it never returns might be the actual bug.


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