Bug 487531

Summary: gnome-terminal often deadlocks
Product: [Fedora] Fedora Reporter: Zdenek Kabelac <zkabelac>
Component: gnome-terminalAssignee: Behdad Esfahbod <behdad>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: ajax, behdad, mclasen
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: 2009-03-17 15:21:30 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 Zdenek Kabelac 2009-02-26 16:03:02 UTC
Description of problem:

With recent upgrade of Fedora Rawhide - I'm seeing a lot of deadlock of gnome-terminal - making this actually unusable.

I've attached gdb to this 'dying' gnome-terminal - here is backtrace:

#0  __lll_lock_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:136
#1  0x00007f9ba14f1ff5 in _L_lock_949 () from /lib64/libpthread.so.0
#2  0x00007f9ba14f1e18 in __pthread_mutex_lock (mutex=0xac2e98) at pthread_mutex_lock.c:61
#3  0x00007f9b9e209f9c in xcb_writev (c=0xac2e80, vector=0x7fffad1a0f10, count=3, requests=1) at xcb_out.c:284
#4  0x00007f9ba0c0ce9c in _XSend (dpy=0xac2400, data=0x0, size=<value optimized out>) at xcb_io.c:332
#5  0x00007f9ba0c0d3f5 in _XFlush (dpy=0xac2400) at xcb_io.c:349
#6  0x00007f9ba0be4d6a in XFlush (dpy=0xac2400) at Flush.c:41
#7  0x00007f9ba3fbde33 in IA__gdk_display_pointer_ungrab (display=0xad10b0, time=<value optimized out>) at gdkdisplay-x11.c:615
#8  0x00007f9b977a85cf in ?? () from /usr/lib64/gtk-2.0/modules/libgnomebreakpad.so
#9  <signal handler called>
#10 0x00007f9ba11b22c5 in raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#11 0x00007f9ba11b3b3a in abort () at abort.c:88
#12 0x00007f9ba11ee69d in __libc_message (do_abort=2, 
    fmt=0x7fffad1a1880 "a51a2000-7f9ba51a3000 r--p 0001f000 08:02 1921480", ' ' <repeats 20 times>, "/lib64/ld-2.9.90.so\n7f9ba51a3000-7f9ba51a4000 rw-p 00020000 08:02 1921480", ' ' <repeats 20 times>, "/lib64/ld-2.9.90.so\n7fffad189000-7fffa"...)
    at ../sysdeps/unix/sysv/linux/libc_fatal.c:170
#13 0x00007f9ba11f41d6 in malloc_printerr (action=3, str=0x7f9ba12b0803 "malloc(): memory corruption", ptr=<value optimized out>)
    at malloc.c:5984
#14 0x00007f9ba11f711d in _int_malloc (av=0x7f9ba14e4a00, bytes=<value optimized out>) at malloc.c:4251
#15 0x00007f9ba11f7da1 in __libc_malloc (bytes=36) at malloc.c:3551
#16 0x00007f9b9e20b58e in read_packet (c=<value optimized out>) at xcb_in.c:157
#17 _xcb_in_read (c=0xac2e80) at xcb_in.c:547
#18 0x00007f9b9e20b8b8 in xcb_poll_for_event (c=0xac2e80) at xcb_in.c:439
#19 0x00007f9ba0c0caed in process_responses (dpy=0x4426, wait_for_first_event=17446, current_error=<value optimized out>, 
    current_request=0) at xcb_io.c:166
#20 0x00007f9ba0c0d3b5 in _XEventsQueued (dpy=0xac2400, mode=<value optimized out>) at xcb_io.c:256
#21 0x00007f9ba0bf5e0d in XPending (dpy=0xac2400) at Pending.c:56
#22 0x00007f9ba3fca0c2 in gdk_event_prepare (source=<value optimized out>, timeout=0x7fffad1a222c) at gdkevents-x11.c:2321
#23 0x00007f9ba1d6c08a in IA__g_main_context_prepare (context=0xadbd60, priority=<value optimized out>) at gmain.c:2134
#24 0x00007f9ba1d6c488 in g_main_context_iterate (context=0xadbd60, block=<value optimized out>, dispatch=<value optimized out>, 
    self=<value optimized out>) at gmain.c:2428
#25 0x00007f9ba1d6cd25 in IA__g_main_loop_run (loop=0xaa8510) at gmain.c:2656
#26 0x00007f9ba43679a7 in IA__gtk_main () at gtkmain.c:1205
#27 0x00000000004151fe in SmcSetProperties ()
#28 0x00007f9ba119d5ed in __libc_start_main (main=<value optimized out>, argc=<value optimized out>, ubp_av=<value optimized out>, 
    init=<value optimized out>, fini=<value optimized out>, rtld_fini=<value optimized out>, stack_end=0x7fffad1a2578)
    at libc-start.c:220
#29 0x0000000000411c79 in SmcSetProperties ()
#30 0x00007fffad1a2578 in ?? ()
---Type <return> to continue, or q <return> to quit---
#31 0x000000000000001c in ?? ()
#32 0x0000000000000001 in ?? ()
#33 0x00007fffad1a3697 in ?? ()
#34 0x0000000000000000 in ?? ()
Current language:  auto; currently asm

Also I've noticed I've been already posting some traces for libxcb - caused by nspluggingwraper - https://bugzilla.redhat.com/show_bug.cgi?id=454597 - maybe it could be related somehow - I'm no longer using nspluingwrapper - so I cannot extend previous bugreport.


Version-Release number of selected component (if applicable):


How reproducible:
Usure

Steps to Reproduce:
1. Usually I press shortcut for openning new tab and deadlock sometimes happens
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Zdenek Kabelac 2009-03-03 12:44:12 UTC
hmmm and I've got this 'deadlock' now - and I'm not sure if it's related or it's a different bug - thought this one doesn't look related to libxcb - it could be either glib2, gtk or maybe gnome-terminal memory corruption issue:

glib2-2.19.10-1.fc11.x86_64
gtk2-2.15.5-1.fc11.x86_64
gnome-terminal-2.25.91-2.fc11.x86_64

So feel free to either split this bug or forward to another package if it's not related in anyway with libxcb - I'm unsure whom to post this bugreport and as is it happens usually with same key sequence it looks like a similar or related bug.

It happens usually when I press  "Shift+Ctrl+T" to open a new terminal.


#0  __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:97
#1  0x00007f8a726393ec in _L_lock_9239 () from /lib64/libc.so.6
#2  0x00007f8a72637a44 in *__GI___libc_free (mem=0x7f8a72923a00) at malloc.c:3623
#3  0x00007f8a7204ba2a in process_responses (dpy=0x1921400, wait_for_first_event=<value optimized out>, current_error=<value optimized out>, 
    current_request=102866) at xcb_io.c:223
#4  0x00007f8a7204c090 in _XReply (dpy=0x1921400, rep=0x7fff7e5decf0, extra=0, discard=1) at xcb_io.c:457
#5  0x00007f8a7203fc33 in XSync (dpy=0x1921400, discard=0) at Sync.c:48
#6  0x00007f8a75407bab in IA__gdk_flush () at gdkevents-x11.c:2545
#7  0x00007f8a68be77ba in ?? () from /usr/lib64/gtk-2.0/modules/libgnomebreakpad.so
#8  <signal handler called>
#9  0x00007f8a725f1275 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#10 0x00007f8a725f2aea in *__GI_abort () at abort.c:88
#11 0x00007f8a7262d60d in __libc_message (do_abort=2, 
    fmt=0x7fff7e5df610 " r--p 00000000 08:02 99109", ' ' <repeats 22 times>, "/usr/share/locale/cs/LC_MESSAGES/gtk20.mo\n7f8a765d4000-7f8a765db000 r-
-s 00000000 08:02 198204", ' ' <repeats 21 times>, "/usr/lib64/gconv/gconv-modules.cache\n"...) at ../sysdeps/unix/sysv/linux/libc_fatal.c:170
#12 0x00007f8a72633146 in malloc_printerr (action=3, str=0x7f8a726f21b8 "double free or corruption (!prev)", ptr=<value optimized out>)
    at malloc.c:5984
#13 0x00007f8a72637a4f in *__GI___libc_free (mem=<value optimized out>) at malloc.c:3625
#14 0x00007f8a7345c8ee in IA__g_closure_invoke (closure=0x19fcd10, return_value=0x0, n_param_values=1, param_values=0x1c1f960, 
    invocation_hint=0x7fff7e5dfed0) at gclosure.c:767
#15 0x00007f8a73472ef8 in signal_emit_unlocked_R (node=0x197da30, detail=<value optimized out>, instance=<value optimized out>, 
    emission_return=<value optimized out>, instance_and_params=<value optimized out>) at gsignal.c:3244
#16 0x00007f8a734742de in IA__g_signal_emit_valist (instance=0x19d9130, signal_id=<value optimized out>, detail=0, var_args=0x7fff7e5e00c0)
    at gsignal.c:2977
#17 0x00007f8a73474873 in IA__g_signal_emit (instance=0xb2c, signal_id=2860, detail=6) at gsignal.c:3034
#18 0x00007f8a756d1c83 in _gtk_action_emit_activate (action=0x19d9130) at gtkaction.c:727
#19 0x00007f8a756d4414 in closure_accel_activate (closure=0x19fcc40, return_value=0x7fff7e5e0360, n_param_values=<value optimized out>, 
    param_values=<value optimized out>, invocation_hint=<value optimized out>, marshal_data=<value optimized out>) at gtkaction.c:1647
#20 0x00007f8a7345c8ee in IA__g_closure_invoke (closure=0x19fcc40, return_value=0x7fff7e5e0360, n_param_values=4, param_values=0x1b5e980, 
    invocation_hint=0x7fff7e5e0320) at gclosure.c:767
#21 0x00007f8a73472ef8 in signal_emit_unlocked_R (node=0x19b52e0, detail=<value optimized out>, instance=<value optimized out>, 
    emission_return=<value optimized out>, instance_and_params=<value optimized out>) at gsignal.c:3244
#22 0x00007f8a7347419e in IA__g_signal_emit_valist (instance=0x19962c0, signal_id=<value optimized out>, detail=776, var_args=0x7fff7e5e0510)
    at gsignal.c:2987
#23 0x00007f8a73474873 in IA__g_signal_emit (instance=0xb2c, signal_id=2860, detail=6) at gsignal.c:3034
#24 0x00007f8a756cdb0c in IA__gtk_accel_group_activate (accel_group=0x19962c0, accel_quark=776, acceleratable=0x1930280, accel_key=116, 
    accel_mods=5) at gtkaccelgroup.c:857
#25 0x00007f8a756cdc1e in IA__gtk_accel_groups_activate (object=0x1930280, accel_key=116, accel_mods=5) at gtkaccelgroup.c:894
#26 0x00007f8a758e6b6a in IA__gtk_window_activate_key (window=0x1930280, event=<value optimized out>) at gtkwindow.c:8256
#27 0x00007f8a758e8267 in gtk_window_key_press_event (widget=0x1930280, event=0x1b82800) at gtkwindow.c:5164
#28 0x00007f8a757ae713 in _gtk_marshal_BOOLEAN__BOXED (closure=0x1965e60, return_value=0x7fff7e5e0890, n_param_values=<value optimized out>, 
    param_values=0x21412a0, invocation_hint=<value optimized out>, marshal_data=0x7f8a758e8230) at gtkmarshalers.c:84
#29 0x00007f8a7345c8ee in IA__g_closure_invoke (closure=0x1965e60, return_value=0x7fff7e5e0890, n_param_values=2, param_values=0x21412a0, 
    invocation_hint=0x7fff7e5e0850) at gclosure.c:767
#30 0x00007f8a73472bb0 in signal_emit_unlocked_R (node=0x1965ed0, detail=<value optimized out>, instance=<value optimized out>, 
    emission_return=<value optimized out>, instance_and_params=<value optimized out>) at gsignal.c:3282
#31 0x00007f8a7347419e in IA__g_signal_emit_valist (instance=0x1930280, signal_id=<value optimized out>, detail=0, var_args=0x7fff7e5e0a40)
    at gsignal.c:2987
#32 0x00007f8a73474873 in IA__g_signal_emit (instance=0xb2c, signal_id=2860, detail=6) at gsignal.c:3034
#33 0x00007f8a758ce9bf in gtk_widget_event_internal (widget=0x1930280, event=0x1b82800) at gtkwidget.c:4761
#34 0x00007f8a757a5975 in IA__gtk_propagate_event (widget=0x1930280, event=0x1b82800) at gtkmain.c:2370
#35 0x00007f8a757a69cb in IA__gtk_main_do_event (event=0x1b82800) at gtkmain.c:1601
#36 0x00007f8a7540b22c in gdk_event_dispatch (source=<value optimized out>, callback=<value optimized out>, user_data=<value optimized out>)
    at gdkevents-x11.c:2364
#37 0x00007f8a731a912e in g_main_dispatch (context=<value optimized out>) at gmain.c:1814
#38 IA__g_main_context_dispatch (context=<value optimized out>) at gmain.c:2367
#39 0x00007f8a731ac888 in g_main_context_iterate (context=0x193add0, block=<value optimized out>, dispatch=<value optimized out>, 
    self=<value optimized out>) at gmain.c:2448
#40 0x00007f8a731acd25 in IA__g_main_loop_run (loop=0x1907510) at gmain.c:2656
#41 0x00007f8a757a6f47 in IA__gtk_main () at gtkmain.c:1205
#42 0x00000000004151fe in main (argc=1, argv=0x7fff7e5e0fa8) at terminal.c:486

Comment 2 Zdenek Kabelac 2009-03-17 08:37:10 UTC
These error seem to be related with this gnome bugzilla 
http://bugzilla.gnome.org/show_bug.cgi?id=572549

I suggest new version should be rebuild.

Comment 3 Matthias Clasen 2009-03-17 15:21:30 UTC
gnome-terminal 2.26.0 has been built in rawhide, so this should be fixed.