gnome-panel hangs

Bug #174088 reported by VijayR
4
Affects Status Importance Assigned to Milestone
gnome-panel (Ubuntu)
Incomplete
Medium
Ubuntu Desktop Bugs

Bug Description

After upgrading to 7.10 gutsy, gnome-panel hangs very frequently, chewing up cpu. It seems to happen when a new window is created, causing some bad comm loop to happen - possibly with window list applet? That too started behaving strangely, resizing frequently without any new windows being created. I'm using sawfish window manager, on a thinkpad t60 with Intel 945 graphics card.

System information:
gnome-panel - 1:2.20.1-0ubuntu1
sawfish - 1:1.3+svn4194-1
xserver.xorg - 1:7.2-5ubuntu13

Some output from strace on gnome-panel:
write(3, "(\0\4\0\0313\300\0]\0\0\0\0\0\0\0", 16) = 16
read(3, "\1\1\221N\0\0\0\0\t\0\340\0\0\0\326\0\1\0\0\0\20\30\0\0"..., 32) = 32
write(3, "\22\0\n\0\240\1 \4F\1\0\0\6\0\0\0 \0\0\0\4\0\0\0\0\0\0"..., 44) = 44
read(3, "\34h\222N\240\1 \4F\1\0\0006\360\356\250\0\1\0\0\2\0\0"..., 32) = 32
read(3, "\1\2\223N\0\0\0\0\"\0\300\1\210t\317\10\0\0\0\0\270T\255"..., 32) = 32
write(3, "\22\0\n\0,\0 \4F\1\0\0\6\0\0\0 \0\0\0\4\0\0\0\0\0\0\0\326"..., 44) = 44
read(3, "\34h\224N,\0 \4F\1\0\0006\360\356\250\0\1\0\0\2\0\0\0\0"..., 32) = 32
read(3, "\1\2\225N\0\0\0\0\"\0\300\1\260\230\345\10\0\0\0\0\270"..., 32) = 32
write(3, "(\0\4\0\f3\300\0]\0\0\0\0\0\0\0", 16) = 16
read(3, "\1\1\226N\0\0\0\0\t\0\340\0\0\0\361\0\1\0\0\0\20\30\0\0"..., 32) = 32
write(3, "\22\0\n\0\35\0\340\1F\1\0\0\6\0\0\0 \0\0\0\4\0\0\0\0\0"..., 44) = 44
read(3, "\34h\227N\35\0\340\1F\1\0\0006\360\356\250\0\1\0\0\2\0"..., 32) = 32
read(3, "\1\2\230N\0\0\0\0\"\0\300\1\270\372?\10\0\0\0\0\270T\255"..., 32) = 32
write(3, "(\0\4\0\0223\300\0]\0\0\0\0\0\0\0", 16) = 16

Some stack traces, obtained by attaching and occasionally Ctrl-c to get the trace:
0xffffe410 in __kernel_vsyscall ()
(gdb) bt
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb75125ab in poll () from /lib/tls/i686/cmov/libc.so.6
#2 0xb760e839 in ?? () from /usr/lib/libX11.so.6
#3 0x080e17d8 in ?? ()
#4 0x00000001 in ?? ()
#5 0xffffffff in ?? ()
#6 0xb761767f in _X11TransWrite () from /usr/lib/libX11.so.6
#7 0xb760ec2f in _XRead () from /usr/lib/libX11.so.6
#8 0xb760f604 in _XReply () from /usr/lib/libX11.so.6
#9 0xb760ad04 in XTranslateCoordinates () from /usr/lib/libX11.so.6
#10 0xb79b52db in gdk_window_get_origin () from /usr/lib/libgdk-x11-2.0.so.0
#11 0x0806bd4b in ?? ()
#12 0x080eb600 in ?? ()
#13 0xbf877bfc in ?? ()
#14 0xbf877bf8 in ?? ()
#15 0x00000000 in ?? ()
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
[Switching to Thread -1226230096 (LWP 5968)]
0xffffe410 in __kernel_vsyscall ()
(gdb) bt
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb759f153 in __write_nocancel () from /lib/tls/i686/cmov/libpthread.so.0
#2 0xb7617b2e in ?? () from /usr/lib/libX11.so.6
#3 0x00000003 in ?? ()
#4 0x080e19d0 in ?? ()
#5 0x0000002c in ?? ()
#6 0xb7571fd5 in ?? () from /lib/tls/i686/cmov/libc.so.6
#7 0xb72881b4 in ?? () from /usr/lib/libgthread-2.0.so.0
#8 0xb76beb2c in ?? () from /usr/lib/libX11.so.6
#9 0xbf875a58 in ?? ()
#10 0xb761767f in _X11TransWrite () from /usr/lib/libX11.so.6
Backtrace stopped: frame did not save the PC
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
0xffffe410 in __kernel_vsyscall ()
(gdb) bt
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb75125ab in poll () from /lib/tls/i686/cmov/libc.so.6
#2 0xb760e839 in ?? () from /usr/lib/libX11.so.6
#3 0x080e17d8 in ?? ()
#4 0x00000001 in ?? ()
#5 0xffffffff in ?? ()
#6 0xb761767f in _X11TransWrite () from /usr/lib/libX11.so.6
#7 0xb760ec2f in _XRead () from /usr/lib/libX11.so.6
#8 0xb760f604 in _XReply () from /usr/lib/libX11.so.6
#9 0xb760ad04 in XTranslateCoordinates () from /usr/lib/libX11.so.6
#10 0xb79b52db in gdk_window_get_origin () from /usr/lib/libgdk-x11-2.0.so.0
#11 0xb61ee4e9 in ?? () from /usr/lib/libwnck-1.so.22
#12 0x083c0cc0 in ?? ()
#13 0xbf875c5c in ?? ()
#14 0xbf875c58 in ?? ()
#15 0x0000001e in ?? ()
#16 0x0000002f in ?? ()
#17 0x00000000 in ?? ()
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
0xffffe410 in __kernel_vsyscall ()
(gdb) bt
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb75125ab in poll () from /lib/tls/i686/cmov/libc.so.6
#2 0xb760e839 in ?? () from /usr/lib/libX11.so.6
#3 0x080e17d8 in ?? ()
#4 0x00000001 in ?? ()
#5 0xffffffff in ?? ()
#6 0xb761767f in _X11TransWrite () from /usr/lib/libX11.so.6
#7 0xb760ec2f in _XRead () from /usr/lib/libX11.so.6
#8 0xb760f604 in _XReply () from /usr/lib/libX11.so.6
#9 0xb76095da in XSync () from /usr/lib/libX11.so.6
#10 0xb61f9a1a in ?? () from /usr/lib/libwnck-1.so.22
#11 0x080e1298 in ?? ()
#12 0x00000000 in ?? ()
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
0xb76f2425 in ?? () from /usr/lib/libglib-2.0.so.0
(gdb) bt
#0 0xb76f2425 in ?? () from /usr/lib/libglib-2.0.so.0
#1 0x080ed500 in ?? ()
#2 0xb759a530 in ?? () from /lib/tls/i686/cmov/libpthread.so.0
#3 0x080ed500 in ?? ()
#4 0xbf875af8 in ?? ()
#5 0xb76f619a in g_source_attach () from /usr/lib/libglib-2.0.so.0
Backtrace stopped: frame did not save the PC
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
0xb76f2425 in ?? () from /usr/lib/libglib-2.0.so.0
(gdb) bt
#0 0xb76f2425 in ?? () from /usr/lib/libglib-2.0.so.0
#1 0x080ed500 in ?? ()
#2 0xb759a530 in ?? () from /lib/tls/i686/cmov/libpthread.so.0
#3 0x080ed500 in ?? ()
#4 0xbf875af8 in ?? ()
#5 0xb76f619a in g_source_attach () from /usr/lib/libglib-2.0.so.0
Backtrace stopped: frame did not save the PC
(gdb) quit
The program is running. Quit anyway (and detach it)? (y or n) y

Revision history for this message
Pedro Villavicencio (pedro) wrote :

Thanks for your bug report. Please try to obtain a backtrace http://wiki.ubuntu.com/DebuggingProgramCrash and attach the file to the bug report. This will greatly help us in tracking down your problem.

Revision history for this message
VijayR (vijay-us) wrote :

Hello. This is happening on a development box, I'm loathe to install dbg packages on it...I've subsequently discovered further information, hopefully, you may be able to track the bug down now?

I'm using sawfish with viewports:
% cat ~/.sawfishrc
(define-special-variable viewport-dimensions '(3 . 3) "Size of each virtual workspace.")

And this bug shows up only if I enable window list to show windows from all workspaces. So, the bug most probably is in that code, which notifies the window list about windows on different workspaces/viewports or in the panel/window-list handler which handles this notification.

Revision history for this message
Pedro Villavicencio (pedro) wrote :

We are closing this bug report because it lacks the information we need to investigate the problem, as described in the previous comments. Please reopen it if you can give us the missing information, and don't hesitate to submit bug reports in the future. To reopen the bug report you can click on the current status, under the Status column, and change the Status back to "New". Thanks again!.

Changed in gnome-panel:
status: Incomplete → Invalid
Revision history for this message
VijayR (vijay-us) wrote :

I'm unable to install the gnome-panel-dbgsym package:

shakti:~$ sudo apt-get install gnome-panel-dbgsym
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.

Since you only requested a single operation it is extremely likely that
the package is simply not installable and a bug report against
that package should be filed.
The following information may help to resolve the situation:

The following packages have unmet dependencies.
  gnome-panel-dbgsym: Depends: gnome-panel (= 1:2.20.0.1-0ubuntu6) but 1:2.20.1-0ubuntu1 is to be installed
E: Broken packages

Version of gnome-panel is 1:2.20.0.1-0ubuntu6

Can you fix the dbgsym package and re-open, I'll get the stack trace? There is definitely a problem...

Changed in gnome-panel:
status: Invalid → Incomplete
Revision history for this message
VijayR (vijay-us) wrote :
Download full text (13.5 KiB)

I installed the gnome-panel-dbgsym package, and got this backtrace when I set the preferences on the gnome-panel to show windows from all workspaces. Based on further observation, it seems that the issue has to do with something bad happening when notifications are sent to the gnome-panel by apps. I have attached the stack traces, there doesn't seem to be any more info though.

Sample output of top:
  PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
13529 vijayr 16 0 73384 46m 10m R 64 2.3 0:32.17 gnome-panel
 5312 root 15 0 424m 76m 8192 R 22 3.8 8:49.97 Xorg

Debug stack traces
shakti:~$ gdb `which gnome-panel` 13529
GNU gdb 6.6-debian
Copyright (C) 2006 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i486-linux-gnu"...
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
Attaching to program: /usr/bin/gnome-panel, process 13529
Reading symbols from /usr/lib/libgnome-desktop-2.so.2...done.
Loaded symbols for /usr/lib/libgnome-desktop-2.so.2
Reading symbols from /usr/lib/libgnomeui-2.so.0...done.
Loaded symbols for /usr/lib/libgnomeui-2.so.0
Reading symbols from /usr/lib/libbonoboui-2.so.0...done.
Loaded symbols for /usr/lib/libbonoboui-2.so.0
Reading symbols from /usr/lib/libgnomecanvas-2.so.0...done.
Loaded symbols for /usr/lib/libgnomecanvas-2.so.0
Reading symbols from /usr/lib/libgnome-2.so.0...done.
Loaded symbols for /usr/lib/libgnome-2.so.0
Reading symbols from /usr/lib/libbonobo-2.so.0...done.
Loaded symbols for /usr/lib/libbonobo-2.so.0
Reading symbols from /usr/lib/libbonobo-activation.so.4...done.
Loaded symbols for /usr/lib/libbonobo-activation.so.4
Reading symbols from /usr/lib/libart_lgpl_2.so.2...done.
Loaded symbols for /usr/lib/libart_lgpl_2.so.2
Reading symbols from /usr/lib/libgnomevfs-2.so.0...done.
Loaded symbols for /usr/lib/libgnomevfs-2.so.0
Reading symbols from /usr/lib/libglade-2.0.so.0...done.
Loaded symbols for /usr/lib/libglade-2.0.so.0
Reading symbols from /usr/lib/libgtk-x11-2.0.so.0...done.
Loaded symbols for /usr/lib/libgtk-x11-2.0.so.0
Reading symbols from /usr/lib/libgdk-x11-2.0.so.0...done.
Loaded symbols for /usr/lib/libgdk-x11-2.0.so.0
Reading symbols from /usr/lib/libatk-1.0.so.0...done.
Loaded symbols for /usr/lib/libatk-1.0.so.0
Reading symbols from /usr/lib/libgdk_pixbuf-2.0.so.0...done.
Loaded symbols for /usr/lib/libgdk_pixbuf-2.0.so.0
Reading symbols from /usr/lib/libpango-1.0.so.0...done.
Loaded symbols for /usr/lib/libpango-1.0.so.0
Reading symbols from /usr/lib/libcairo.so.2...done.
Loaded symbols for /usr/lib/libcairo.so.2
Reading symbols from /usr/lib/libgconf-2.so.4...done.
Loaded symbols for /usr/lib/libgconf-2.so.4
Reading symbols from /usr/lib/libORBit-2.so.0...done.
Loaded symbols for /usr/lib/libORBit-2.so.0
Reading symbols from /usr/lib/libgnome-menu.so.2...done...

Changed in gnome-panel:
status: Incomplete → Confirmed
Revision history for this message
VijayR (vijay-us) wrote :

A couple of other stack traces, this time when a new window was opened, and tried to shrink the size of the window_list:

(gdb) bt
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb74a45ab in poll () from /lib/tls/i686/cmov/libc.so.6
#2 0xb75a0839 in ?? () from /usr/lib/libX11.so.6
#3 0x080e17d8 in ?? ()
#4 0x00000001 in ?? ()
#5 0xffffffff in ?? ()
#6 0xb75a967f in _X11TransWrite () from /usr/lib/libX11.so.6
#7 0xb75a0c2f in _XRead () from /usr/lib/libX11.so.6
#8 0xb75a1604 in _XReply () from /usr/lib/libX11.so.6
#9 0xb759b5da in XSync () from /usr/lib/libX11.so.6
#10 0xb5f1ea1a in ?? () from /usr/lib/libwnck-1.so.22
#11 0x080e1298 in ?? ()
#12 0x00000000 in ?? ()
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
[Switching to Thread -1226680656 (LWP 13981)]
0xb7444810 in ?? () from /lib/tls/i686/cmov/libc.so.6
(gdb) bt
#0 0xb7444810 in ?? () from /lib/tls/i686/cmov/libc.so.6
#1 0x083e6e08 in ?? ()
#2 0xb71cc464 in ?? () from /usr/lib/libpangoft2-1.0.so.0
#3 0xbf9796e8 in ?? ()
#4 0xb71a55e5 in pango_fc_font_unlock_face ()
   from /usr/lib/libpangoft2-1.0.so.0
#5 0xb7448800 in free () from /lib/tls/i686/cmov/libc.so.6
#6 0xb7013abd in ?? () from /usr/lib/libfreetype.so.6
#7 0x0a13c248 in ?? ()
#8 0xb71cc464 in ?? () from /usr/lib/libpangoft2-1.0.so.0
#9 0xbf979788 in ?? ()
#10 0xb71adc7a in ?? () from /usr/lib/libpangoft2-1.0.so.0
#11 0x081514b0 in ?? ()
#12 0x0a13c248 in ?? ()
#13 0xbf9797a8 in ?? ()
#14 0xb71ae65c in ?? () from /usr/lib/libpangoft2-1.0.so.0
#15 0x081514b0 in ?? ()
#16 0x0a13c248 in ?? ()
#17 0x00000009 in ?? ()
#18 0xb71cc464 in ?? () from /usr/lib/libpangoft2-1.0.so.0
#19 0x0a12eeb0 in ?? ()
#20 0x084792b0 in ?? ()
#21 0xbf9797c8 in ?? ()
---Type <return> to continue, or q <return> to quit---
#22 0xb71abb64 in pango_ot_buffer_destroy () from /usr/lib/libpangoft2-1.0.so.0
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Revision history for this message
Sebastien Bacher (seb128) wrote :

Those backtrace have no debug informations

Revision history for this message
VijayR (vijay-us) wrote :
Download full text (6.5 KiB)

Sorry about that, had to install more dbgsym packages of libs gnome-panel was linking against. Is the following stack trace more useful?

0xffffe410 in __kernel_vsyscall ()
(gdb) bt
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb748d5ab in poll () from /lib/tls/i686/cmov/libc.so.6
#2 0xb7589839 in _XWaitForReadable (dpy=0x80e1298) at ../../src/XlibInt.c:509
#3 0xb7589c2f in _XRead (dpy=0x80e1298, data=0xbffc0c90 "�\031\016\b",
    size=32) at ../../src/XlibInt.c:1099
#4 0xb758a604 in _XReply (dpy=0x80e1298, rep=0xbffc0c90, extra=0, discard=1)
    at ../../src/XlibInt.c:1730
#5 0xb75845da in XSync (dpy=0x80e1298, discard=0) at ../../src/Sync.c:48
#6 0xb5ce3a1a in ?? () from /usr/lib/libwnck-1.so.22
#7 0x080e1298 in ?? ()
#8 0x00000000 in ?? ()
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
[Switching to Thread -1226774864 (LWP 14578)]
hash_bytes_fnv (buffer=0xbffbf823 "?", len=32, hval=1495512538)
    at /build/buildd/pango1.0-1.18.3/pango/pangofc-fontmap.c:311
311 /build/buildd/pango1.0-1.18.3/pango/pangofc-fontmap.c: No such file or directory.
        in /build/buildd/pango1.0-1.18.3/pango/pangofc-fontmap.c
(gdb) bt
#0 hash_bytes_fnv (buffer=0xbffbf823 "?", len=32, hval=1495512538)
    at /build/buildd/pango1.0-1.18.3/pango/pangofc-fontmap.c:311
#1 0xb7191c5f in fontset_hash_key_hash (key=0xbffbf800)
    at /build/buildd/pango1.0-1.18.3/pango/pangofc-fontmap.c:346
#2 0xb76628eb in g_hash_table_lookup () from /usr/lib/libglib-2.0.so.0
#3 0xb7190d52 in pango_fc_font_map_load_fontset (fontmap=0x81164b8,
    context=0x8449b50, desc=0x86bfdc0, language=0x814bea0)
    at /build/buildd/pango1.0-1.18.3/pango/pangofc-fontmap.c:1073
#4 0xb787c5e0 in pango_font_map_load_fontset (fontmap=0x81164b8,
    context=0x8449b50, desc=0x86bfdc0, language=0x814bea0)
    at /build/buildd/pango1.0-1.18.3/pango/pango-fontmap.c:107
#5 0xb787a4c7 in itemize_state_process_run (state=0xbffbf970)
    at /build/buildd/pango1.0-1.18.3/pango/pango-context.c:1278
#6 0xb787a842 in pango_itemize_with_base_dir (context=0x8449b50,
    base_dir=PANGO_DIRECTION_LTR,
    text=0x832fb70 "vijayr@shakti: ~/wt/digicam/dpreview", start_index=0,
    length=36, attrs=0x9d81b10, cached_iter=0x9e03300)
    at /build/buildd/pango1.0-1.18.3/pango/pango-context.c:1427
#7 0xb788370e in pango_layout_check_lines (layout=0x8681e28)
    at /build/buildd/pango1.0-1.18.3/pango/pango-layout.c:3619
#8 0xb78848c7 in pango_layout_get_extents_internal (layout=0x8681e28,
    ink_rect=0x0, logical_rect=0xbffbfcbc, line_extents=0x0)
    at /build/buildd/pango1.0-1.18.3/pango/pango-layout.c:2311
---Type <return> to continue, or q <return> to quit---
#9 0xb7aa2b14 in gtk_label_size_request (widget=0x8318e20,
    requisition=0x8318e3c) at /build/buildd/gtk+2.0-2.12.0/gtk/gtklabel.c:2190
#10 0xb7714279 in g_cclosure_marshal_VOID__BOXED ()
   from /usr/lib/libgobject-2.0.so.0
#11 0xb7705f89 in ?? () from /usr/lib/libgobject-2.0.so.0
#12 0x08102ab8 in ?? ()
#13 0x00000000 in ?? ()
(gdb) c
Continuing.

Program received signal SIGINT, Interrupt.
0xffffe410 in __kernel_vsyscall ()
(gdb) bt
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb748d5ab in poll () from /lib/tls/i686...

Read more...

Revision history for this message
Mikko Ruohola (polarfox) wrote :

How can I find out if this is relevant to my panel hanging and eating CPU cycles like mad.
It's seems to be limited only to panel that is in the right edge of the screen. only gnome main menu answers, all the other stuff in the panel is unresponsive.

Revision history for this message
VijayR (vijay-us) wrote :

In my case, both panels (one top, one left) hang, and are completely unresponsive. I guess you could attach your stacktraces.

Revision history for this message
Hemant (hborole) wrote :

I just updated ubuntu today to 7.10 gutsy. Whenever I try minimizing pidgin, or sending it to system tray by closing it, the gnome-panel hangs. I have moved the window task panel from the bottom and added the panel to the side bar.
I killed the gnome-panel process and restarted it and that kinda rekicked the panel. However I am now more leary about running pidgin, though I dont want to relate this issue simply with pidgin.
I am using the ati radeon video driver, if that is some info that may help further.

Revision history for this message
Sebastien Bacher (seb128) wrote :

could you try if that's still an issue on hardy?

Changed in gnome-panel:
status: Confirmed → Incomplete
Revision history for this message
VijayR (vijay-us) wrote : Re: [Bug 174088] Re: gnome-panel hangs

Sebastien Bacher wrote:
> could you try if that's still an issue on hardy?
>

I am not able to upgrade to hardy yet, due to work reasons. However, could this
be the same bug?

https://bugs.launchpad.net/ubuntu/+source/gnome-panel/+bug/187540

Vijay

Revision history for this message
Sebastien Bacher (seb128) wrote :

if you are using a vertical gnome-panel that might be the issue indeed, marking as duplicate

Revision history for this message
Andrew Melo (andrew-melo) wrote :

Sebastien - I can confirm this bug using the default horizontal gnome-panels when clicking the time to pop up the calendar.

I'm on the latest 8.04

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.