GNOME Bugzilla – Bug 692991
gnome-shell doesn't fully unlock the screen (stops after entering password with gray screen)
Last modified: 2013-02-17 15:32:49 UTC
Sometimes gnome-shell hangs on unlock of screensaver (no JS stacktrace as I thought it is bug #688197, I will post the error log on next repro).
+ Trace 231475
Thread 1 (Thread 0x7ff2d84b6940 (LWP 25049))
Inferior 1 [process 25049] will be detached. Quit anyway? (y or n) Detaching from program: /usr/bin/gnome-shell, process 25049
The main thread seems to be blocked on a sync X call, which is expected if you captured this from another VT. Can you confirm that execution then blocks on a JS instruction? Otherwise, I don't see how this can be a deadlock, rather than, general slowness due to powersaving CPU and GPU.
It doesn't block but usually the unlock of screen is instantenious - I've waited a minute in this case. Computer was connected to AC so the jump to P0 should be done much faster (even with conservative governor). The hand happens after entering the password and there was no problem with entering the password itself. It is not an issue with swap as well (no disk activity and no swap occupancy). I've notice a connection between hang and failure to suspend due to inactivity. But I would need to experience a few more hangs to be sure. gjs_dumpstack was empty.
(In reply to comment #1) > The main thread seems to be blocked on a sync X call, which is expected if you > captured this from another VT. > > Can you confirm that execution then blocks on a JS instruction? > Otherwise, I don't see how this can be a deadlock, rather than, general > slowness due to powersaving CPU and GPU. Just an additional point - it is apparent deadlock - not a real one. Alt+F2 and entering r works and unlocks the screen so: - It is not CPU/GPU/IO slowness as the restart was instantaneous - gnome-shell is not deadlocked per se but enters incorrect state
Ah, this is different then. Did you see anything in stderr, like an "invalid pop" JS ERROR?
(In reply to comment #4) > Ah, this is different then. > Did you see anything in stderr, like an "invalid pop" JS ERROR? Not sure. Error seems to not be logged int ~/.xsession-errors any more: % stat .xsession-errors File: ‘/home/mpiechotka/.xsession-errors’ Size: 4466304 Blocks: 8728 IO Block: 4096 regular file Device: 1dh/29d Inode: 839840 Links: 1 Access: (0600/-rw-------) Uid: ( 1000/mpiechotka) Gid: ( 1000/mpiechotka) Access: 2013-02-17 15:15:12.076136579 +0000 Modify: 2012-09-27 09:58:38.919170311 +0100 Change: 2012-09-27 09:58:38.919170311 +0100 Birth: - % lsof .xsession-errors || echo "Not opened" Not opened Unfortunately running gnome-shell from commandline become recently (3.4) rather hard (not the running itself as much as setting various environment variables etc. In addition ssh key daemon of gnome-keyring stops working probably due to some conflicts) so it would rather disrupt the workflow. to try to reproduce bug which happens every week or so. Is the stderr saved anywhere?
Since 3.6, stderr is in ~/.cache/gdm/session.log
(In reply to comment #6) > Since 3.6, stderr is in ~/.cache/gdm/session.log I believe this is relevant part. I don't have any extensions installed so I guess plug-in here references mutter plug-in. JS LOG: pushModal: invocation of begin_modal failed Window manager warning: Log level 8: meta_end_modal_for_plugin: assertion `compositor->modal_plugin == plugin' failed JS ERROR: !!! Exception in callback for signal: unlocked JS ERROR: !!! message = '"incorrect pop"' JS ERROR: !!! fileName = '"/usr/share/gnome-shell/js/ui/main.js"' JS ERROR: !!! lineNumber = '638' JS ERROR: !!! stack = '"popModal@/usr/share/gnome-shell/js/ui/main.js:638 ScreenShield<.unlock@/usr/share/gnome-shell/js/ui/screenShield.js:838 wrapper@/usr/share/gjs-1.0/lang.js:213 ScreenShield<._tweenUnlocked@/usr/share/gnome-shell/js/ui/screenShield.js:808 wrapper@/usr/share/gjs-1.0/lang.js:213 ScreenShield<._onUnlockSucceded@/usr/share/gnome-shell/js/ui/screenShield.js:688 wrapper@/usr/share/gjs-1.0/lang.js:213 _emit@/usr/share/gjs-1.0/signals.js:124 UnlockDialog<._onVerificationComplete@/usr/share/gnome-shell/js/ui/unlockDialog.js:275 wrapper@/usr/share/gjs-1.0/lang.js:213 _emit@/usr/share/gjs-1.0/signals.js:124 ShellUserVerifier<._onVerificationComplete@/usr/share/gnome-shell/js/gdm/util.js:328 wrapper@/usr/share/gjs-1.0/lang.js:213 "' Window manager warning: Log level 8: meta_end_modal_for_plugin: assertion `compositor->modal_plugin == plugin' failed JS ERROR: !!! Exception in callback for signal: Unlock JS ERROR: !!! message = '"incorrect pop"' JS ERROR: !!! fileName = '"/usr/share/gnome-shell/js/ui/main.js"' JS ERROR: !!! lineNumber = '638' JS ERROR: !!! stack = '"popModal@/usr/share/gnome-shell/js/ui/main.js:638 ScreenShield<.unlock@/usr/share/gnome-shell/js/ui/screenShield.js:838 wrapper@/usr/share/gjs-1.0/lang.js:213 ScreenShield<._init/<@/usr/share/gnome-shell/js/ui/screenShield.js:425 _emit@/usr/share/gjs-1.0/signals.js:124 _convertToNativeSignal@/usr/share/gjs-1.0/overrides/Gio.js:130 "' Window manager warning: Log level 8: g_source_remove: assertion `tag > 0' failed gnome-session[5152]: WARNING: Detected that screensaver has left the bus ** Message: applet now removed from the notification area JS LOG: GNOME Shell started at Sun Feb 17 2013 15:05:50 GMT+0000 (GMT) ** Message: applet now embedded in the notification area
Ok, so this is a duplicate of bug 689106. Thanks for taking the time to report this bug. This particular bug has already been reported into our bug tracking system, but we are happy to tell you that the problem has already been fixed. It should be solved in the next software version. You may want to check for a software upgrade. *** This bug has been marked as a duplicate of bug 689106 ***