After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 668793 - phantom screensaver lock dialog makes it look like gnome crashed when it didn't
phantom screensaver lock dialog makes it look like gnome crashed when it didn't
Status: RESOLVED OBSOLETE
Product: gnome-screensaver
Classification: Deprecated
Component: dialog
3.2.x
Other Linux
: Normal normal
: ---
Assigned To: gnome-screensaver maintainers
gnome-screensaver maintainers
Depends on:
Blocks:
 
 
Reported: 2012-01-26 23:18 UTC by Máirín Duffy
Modified: 2014-08-20 20:23 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Stack traces (13.85 KB, text/plain)
2012-08-23 21:46 UTC, Federico Mena Quintero
Details

Description Máirín Duffy 2012-01-26 23:18:51 UTC
Check this out:

http://www.youtube.com/watch?v=YNZW0DkSh8w

I'm blind-typing my password in a hidden gnome screensaver lock dialog. I mistyped it the first time in the video.

This started happening to me and I thought the shell had crashed. Then I noticed when I moved my mouse it changed from an arrow to an I bar.

I don't know why it's happening. I have a Lenovo x220 laptop. It tends to only happen when the laptop is on the dock and connected to an external monitor on the dock. 

my laptop configuration is maybe a little odd because i have the screens stacked vertically eg http://farm7.static.flickr.com/6041/6217871733_fce3006cc5_o.jpg

i also have a lot of issues with gconf2 crashing, and with gnome-settings-daemon crashing. this is on a stable & updated fedora 16 installation.

Check this out:

http://www.youtube.com/watch?v=YNZW0DkSh8w

I'm blind-typing my password in a hidden gnome screensaver lock dialog. I mistyped it the first time in the video.

This started happening to me and I thought the shell had crashed. Then I noticed when I moved my mouse it changed from an arrow to an I bar.

I don't know why it's happening. I have a Lenovo x220 laptop. It tends to only happen when the laptop is on the dock and connected to an external monitor on the dock. 

my laptop configuration is maybe a little odd because i have the screens stacked vertically eg http://farm7.static.flickr.com/6041/6217871733_fce3006cc5_o.jpg

i also have a lot of issues with gconf2 crashing, and with gnome-settings-daemon crashing. this is on a stable & updated fedora 16 installation.

gnome-screensaver-3.2.0-1.fc16.x86_64

I'll try to grab the output from xsession errors the next time it happens. I didn't think to when I filmed this video.
Comment 1 Máirín Duffy 2012-01-26 23:19:39 UTC
(sigh sorry for the repeating in the bug description)
Comment 2 Marius Gedminas 2012-03-09 12:58:54 UTC
I see this all the time when I use two monitors (side-by-side).  The primary monitor has a wallpaper, an invisible unlock dialog (with mouse cursor changes as I move over it), and a gnome-shell panel at the top.  The secondary monitor is black, has a gnome-panel at the top, and mouse cursor disappears if I move the mouse into it.

Pressing Esc several times makes the invisible unlock dialog go away and then come back, visible.

If you've got accessibility enabled, the on-screen keyboard is also invisible in this situation.

I don't remember ever seeing this when my external monitor was unplugged.

My hardware is a Lenovo ThinkPad T61 with Intel GM965 graphics.  I run Ubuntu 11.10 (i686).
Comment 3 Marius Gedminas 2012-03-09 13:07:11 UTC
Correction: pressing Esc several times doesn't always make the unlock dialog appear.  It makes the screen flicker (the wallpaper briefly appears stretched a bit differently; sometimes I catch a glimpse of the unlock dialog but then it goes away).  There seems to be some sort of a race condition here.  I've captured the flickering as a video file on my phone, if you think it could be useful.

I'm now blindly guessing that gnome-screensaver is trying to show my wallpaper on both monitors, but the window that's supposed to show up on the external monitor accidentally appears on top of the window for the internal monitor.

My xrandr configuration:

Screen 0: minimum 320 x 200, current 2560 x 1024, maximum 8192 x 8192
LVDS1 connected 1280x800+0+224 (normal left inverted right x axis y axis) 331mm x 207mm
VGA1 connected 1280x1024+1280+0 (normal left inverted right x axis y axis) 376mm x 301mm
DVI1 disconnected (normal left inverted right x axis y axis)
Comment 4 Marius Gedminas 2012-03-09 13:42:23 UTC
I've captured xwininfo -root -tree in three situations:

  * screen locked
  * screen locked, unlock dialog appears on the right monitor and is visible
  * screen locked, unlock dialog appears on the left monitor and is invisible

Diffing them I see no obvious differences (e.g. there are no windows that would obscure the screensaver dialog window).
Comment 5 Ray Strode [halfline] 2012-05-10 18:25:55 UTC
Ajax and I looked this today.  It's a DRI2 bug.  The X server throttles clients that request being throttled to 60 frames per second. This means if gnome-shell sends an update, it won't get attended to right away. It's gets tagged as someone to ignore.  Then later when 1/60th of a second is up, it's supposed to get untagged and served.

The problem happens if a monitor gets disconnected while the client is being ignored. It means it will never get un-ignored and things will seemingly freeze up.
Comment 6 Federico Mena Quintero 2012-08-22 19:54:13 UTC
I'm getting this too, in this scenario:

1. Laptop on the left, external monitor on the right.
2. Go idle.
3. Both monitors fade to black slowly, as expected.
4. Sometimes both monitors stay black; sometimes they have a "translucent black overlay" over everything but the shell's top panel.

Gnome-shell gets stuck here:
(gdb) where
  • #0 poll
    from /lib64/libc.so.6
  • #1 ??
    from /usr/lib64/libxcb.so.1
  • #2 ??
    from /usr/lib64/libxcb.so.1
  • #3 xcb_writev
    from /usr/lib64/libxcb.so.1
  • #4 _XSend
    from /usr/lib64/libX11.so.6
  • #5 _XFlush
    from /usr/lib64/libX11.so.6
  • #6 _XData32
    from /usr/lib64/libX11.so.6
  • #7 XChangeProperty
    from /usr/lib64/libX11.so.6
  • #8 ??
    from /usr/lib64/libmutter.so.0
  • #9 meta_stack_raise
    from /usr/lib64/libmutter.so.0
  • #10 meta_window_raise
    from /usr/lib64/libmutter.so.0
  • #11 meta_window_configure_request
    from /usr/lib64/libmutter.so.0
  • #12 ??
    from /usr/lib64/libmutter.so.0
  • #13 ??
    from /usr/lib64/libmutter.so.0
  • #14 ??
    from /usr/lib64/libgdk-3.so.0
  • #15 ??
    from /usr/lib64/libgdk-3.so.0
  • #16 gdk_display_get_event
    from /usr/lib64/libgdk-3.so.0
  • #17 ??
    from /usr/lib64/libgdk-3.so.0
  • #18 g_main_context_dispatch
    from /usr/lib64/libglib-2.0.so.0
  • #19 ??
    from /usr/lib64/libglib-2.0.so.0
  • #20 g_main_loop_run
    from /usr/lib64/libglib-2.0.so.0
  • #21 meta_run
    from /usr/lib64/libmutter.so.0
  • #22 main

And sometimes, my CPU is pegged at that time.
Comment 7 Federico Mena Quintero 2012-08-22 19:56:19 UTC
Forgot to say - I have selected "don't lock" in the Brightness and Lock panel in the control center.  I can't unlock after going idle, and I have to kill gnome-shell.
Comment 8 Ray Strode [halfline] 2012-08-23 17:43:27 UTC
can you do a 

thread apply all bt full 

?
Comment 9 Federico Mena Quintero 2012-08-23 21:46:40 UTC
Created attachment 222263 [details]
Stack traces

Hmm, now I'm not so sure that I have the same bug.

Here are three traces of stopping gnome-shell after it freezes.  I took the first trace, continued it, hit Ctrl-C, got another one, and did the same again.
Comment 10 Ray Strode [halfline] 2012-08-24 14:29:31 UTC
Federico, if you attach to gnome-screensaver and run:

(gdb) call gdk_x11_ungrab_server ()
(gdb) cont

do things spring back to life for you?
Comment 11 Bastien Nocera 2014-08-20 20:23:58 UTC
The screen lock is now implemented directly in gnome-shell, not in
gnome-screensaver (as it was with older version of GNOME 3 and GNOME 2.x).

If the reported problems persists in recent versions of GNOME, please file a new bug against gnome-shell with the "lock-screen" component selected.

If your installation is an older version of GNOME that cannot be upgraded (such as an enterprise version), please use the appropriate support mechanism from your vendor, or your distribution instead.