Gnome Shell periodically locks up hard in F16

Deron Meranda deron.meranda at gmail.com
Sat Nov 19 05:33:02 UTC 2011


Since upgrading to Fedora 16, I have experienced several periodic hard
lock-ups of the Gnome Shell session. I never experienced such
behaviour in F15. I am wondering if anybody else is seeing something
similar or may have advice, or can suggest a better way for me to
gather useful debugging information should it happen again.

I'm running with this version (including shell extensions):

gnome-shell-3.2.1-2.fc16.x86_64
gnome-shell-extension-apps-menu-3.2.0-1.fc16.noarch
gnome-shell-extension-common-3.2.0-1.fc16.noarch
gnome-shell-extension-drive-menu-3.2.0-1.fc16.noarch
gnome-shell-extension-mediaplayers-0-0.1.git259f96e.fc16.noarch
gnome-shell-extension-places-menu-3.2.0-1.fc16.noarch
gnome-shell-extension-systemMonitor-3.2.0-1.fc16.noarch

Often these lock-ups occur when I'm opening or closing windows in
quick succession. However the last lock-up happened as I flung the
pointer into the upper-left corner to bring up the Gnome Shell
activities bar. Gnome hung almost instantly, and the screen output was
frozen-in-time just as the little animated circular "ripple" that
happens when you hit an edge got about 15-to-20 pixels away from the
corner position.

The general symptoms are that all user interaction with the display
ceases to work. The mouse pointer will still move, but nothing can be
clicked on. Keyboard entry completely stops working too; which
includes any of the hot keys such as the "windows" keys, alt-F?,
ctl-alt-backspace, etc. I think running applications may still able to
draw to the screen, as I saw firefox refresh some icons while it was
in a locked up state. But Gnome itself appears quite dead.

The operating system as a whole though is still working. I can login
using ssh from another machine, and kill off the hung user's gnome
session processes. Afterwards I log in again to a new session and
everything works fine.


I didn't see anything in my syslog, except at the point when I killed
the session processes, such as...

Nov 18 23:53:03 beryl pulseaudio[2563]: module-gconf.c: Unable to read
or parse data from client.
Nov 18 23:53:03 beryl gnome-session[2509]: WARNING: Detected that
screensaver has left the bus
Nov 18 23:53:03 beryl gnome-session[2509]: GConf-WARNING: Got
Disconnected from DBus.#012
Nov 18 23:53:03 beryl gnome-session[2509]: WARNING: Application
'gnome-settings-daemon.desktop' killed by signal
Nov 18 23:53:03 beryl gnome-session[2509]: WARNING: Application
'gnome-shell.desktop' killed by signal
Nov 18 23:53:33 beryl systemd-logind[1256]: Removed session 2.
Nov 18 23:53:35 beryl systemd-logind[1256]: New session 39 of user gdm.
Nov 18 23:53:35 beryl systemd-logind[1256]: Linked /tmp/.X11-unix/X0
to /run/user/gdm/X11/display.
...

The ~/.xsession-errors file is harder to decipher, mainly because it
lacks any timestamps at all and is generally quite cluttered.  I am
seeing a ton of errors like:

   ([object _private_Clutter_Timeline],434)@/usr/share/gnome-shell/js/ui/tweener.js:220
   "'
    JS ERROR: !!!     message = '"global.current_event_time is not a function"'
    JS ERROR: !!!   Exception was: TypeError:
global.current_event_time is not a function
    JS ERROR: !!!     lineNumber = '292'
    JS ERROR: !!!     fileName = '"/usr/share/gnome-shell/js/ui/keyboard.js"'

But I see those even when Gnome is not locked up. I think this may be
an unrelated upstream bug,
http://mail.gnome.org/archives/commits-list/2011-November/msg01202.html


And I also caught an exception in seapplet, which is strange because I
did not see any AVC error show up in syslog. The stack trace follows:

*** glibc detected *** /usr/bin/seapplet: double free or corruption
(out): 0x000000000265d290 ***
======= Backtrace: =========
/lib64/libc.so.6[0x368be7c606]
/lib64/libglib-2.0.so.0(g_free+0x23)[0x368ba4b793]
/usr/lib64/libgtk-x11-2.0.so.0[0x369df6ad19]
/usr/lib64/libgtk-x11-2.0.so.0[0x369dfc62f2]
/lib64/libgobject-2.0.so.0(g_closure_invoke+0x154)[0x368f60ea24]
/lib64/libgobject-2.0.so.0[0x368f620527]
/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0x851)[0x368f62a141]
/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x368f62a2e2]
/lib64/libgobject-2.0.so.0[0x368f611a47]
/lib64/libgobject-2.0.so.0(g_object_notify+0x500)[0x368f613a80]
/usr/lib64/libgtk-x11-2.0.so.0[0x369dfc9723]
/usr/lib64/libgtk-x11-2.0.so.0(gtk_main_do_event+0x3f5)[0x369df4cb05]
/usr/lib64/libgdk-x11-2.0.so.0[0x369ca6209c]
/lib64/libglib-2.0.so.0(g_main_context_dispatch+0x1dd)[0x368ba44a7d]
/lib64/libglib-2.0.so.0[0x368ba45278]
/lib64/libglib-2.0.so.0(g_main_loop_run+0x175)[0x368ba457c5]
/usr/lib64/libgtk-x11-2.0.so.0(gtk_main+0xa7)[0x369df4b9c7]
/usr/bin/seapplet[0x4021c6]
/lib64/libc.so.6(__libc_start_main+0xed)[0x368be2169d]
/usr/bin/seapplet[0x402779]
======= Memory map: ========
....hundreds of lines omitted here...


Otherwise, I don't have much else to report at this point. Any help to
figure this out would be appreciated. Thanks.
-- 
Deron Meranda
http://deron.meranda.us/


More information about the users mailing list