gnome-screensaver dialog helper spins indefinitely, never unlocks the session, when GTK_IM_MODULE is set

Bug #321311 reported by Steve Langasek
52
This bug affects 7 people
Affects Status Importance Assigned to Milestone
gtk+2.0 (Ubuntu)
Fix Released
Critical
Ubuntu Desktop Bugs
Jaunty
Fix Released
Critical
Ubuntu Desktop Bugs

Bug Description

Binary package hint: gnome-screensaver

gnome-screensaver in jaunty is failing to unlock my session when I give it the password. Strace shows the gnome-screensaver-dialog process is spinning indefinitely watching a socket (the X socket, I guess), and doesn't appear to be processing the authentication request at all (i.e., no indication that it's calling into PAM).

The only way I can unlock my session again is by switching to the console and killing the screensaver.

I think this was working when I first upgraded to jaunty, and regressed some time over the past week; but I could be misremembering.

Steve Langasek (vorlon)
Changed in gnome-screensaver:
importance: Undecided → Critical
milestone: none → jaunty-alpha-5
Revision history for this message
Stephan Walter (stephan-walter) wrote :

I can confirm this on Jaunty (working before, regressed in the past days). Also, CPU usage of gnome-screensaver is high when it shows "Checking...". After a while it stops without unlocking, just showing an empty password box again.

Maybe this is a duplicate of bug #181065?

Revision history for this message
Steve Langasek (vorlon) wrote : Re: [Bug 321311] Re: gnome-screensaver dialog helper spins indefinitely, never unlocks the session

On Mon, Jan 26, 2009 at 10:08:59PM -0000, Stephan Walter wrote:

> Maybe this is a duplicate of bug #181065?

I don't believe so. Bug #181065 reports that the screen eventually unlocks
after a few minutes. I haven't found this to be the case (or else I'm too
impatient to wait for it to happen).

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Revision history for this message
Steve Langasek (vorlon) wrote : Re: gnome-screensaver dialog helper spins indefinitely, never unlocks the session

I've just tested with downgrading to the intrepid version of gnome-screensaver; same results.

I've also done a bit of stracing, and the helper does get as far as reading /etc/pam.d and loading the modules; then it falls down somewhere around where it spawns a separate thread for PAM in order to be able to continue handling UI events.

Revision history for this message
Steve Langasek (vorlon) wrote :
Download full text (4.4 KiB)

Output from gnome-screensaver --no-daemon --debug while trying to get the screen to unlock:

[find_window_at_pointer] gs-manager.c:1175 (01:53:03): Requesting unlock for screen 0
[gs_window_request_unlock] gs-window-x11.c:1586 (01:53:03): Requesting unlock
[window_dialog_up_cb] gs-manager.c:1084 (01:53:03): Handling dialog up
[gs_grab_get_keyboard] gs-grab-x11.c:166 (01:53:03): Grabbing keyboard widget=3C00021
[gs_grab_get_mouse] gs-grab-x11.c:193 (01:53:03): Grabbing mouse widget=3C00021
[gs_grab_release_mouse] gs-grab-x11.c:237 (01:53:03): Ungrabbing pointer
[window_dialog_up_cb] gs-manager.c:1107 (01:53:03): Suspending jobs
[gs_job_suspend] gs-job.c:508 (01:53:03): suspending job
[gs_job_suspend] gs-job.c:508 (01:53:03): suspending job
[popup_dialog_idle] gs-window-x11.c:1531 (01:53:03): Popping up dialog
[gs_window_clear_to_background_pixmap] gs-window-x11.c:301 (01:53:03): Clearing window to background pixmap
[gs_window_move_resize_window] gs-window-x11.c:455 (01:53:03): Move and/or resize window on monitor 0: x=0 y=0 w=1680 h=1050
[error_watch] gs-window-x11.c:959 (01:53:03): command error output: [gs_debug_init] gs-debug.c:106 (01:53:03): Debugging enabled

[listener_service_deleted] gs-listener-dbus.c:1043 (01:53:03): DBUS service deleted:
[error_watch] gs-window-x11.c:959 (01:53:04): command error output: [auth_message_handler] gnome-screensaver-dialog.c:221 (01:53:04): Got message style 1: 'Password: '

[listener_service_deleted] gs-listener-dbus.c:1043 (01:53:04): DBUS service deleted:
[gs_window_raise] gs-window-x11.c:728 (01:53:04): Raising screensaver window
[gs_window_raise] gs-window-x11.c:728 (01:53:04): Raising screensaver window
[gs_window_xevent] gs-window-x11.c:799 (01:53:04): not raising our windows
[gs_window_xevent] gs-window-x11.c:799 (01:53:04): not raising our windows
[gs_window_xevent] gs-window-x11.c:799 (01:53:04): not raising our windows
[gs_window_xevent] gs-window-x11.c:799 (01:53:04): not raising our windows
[window_obscured_cb] gs-manager.c:1360 (01:53:04): Handling window obscured: obscured
[gs_job_stop] gs-job.c:479 (01:53:04): stopping job
[gs_job_stop] gs-job.c:482 (01:53:04): Could not stop job: pid not defined
[gs_window_xevent] gs-window-x11.c:799 (01:53:04): not raising our windows
[gs_window_xevent] gs-window-x11.c:799 (01:53:04): not raising our windows
[gs_window_xevent] gs-window-x11.c:799 (01:53:04): not raising our windows
[gs_window_xevent] gs-window-x11.c:799 (01:53:04): not raising our windows
[window_obscured_cb] gs-manager.c:1360 (01:53:04): Handling window obscured: unobscured
[manager_maybe_start_job_for_window] gs-manager.c:227 (01:53:04): Not starting job because dialog is up
[gs_manager_request_unlock] gs-manager.c:1791 (01:53:04): Request unlock but dialog is already up
[lock_command_watch] gs-window-x11.c:1431 (01:53:04): command output: WINDOW ID=69206045

[gs_window_xevent] gs-window-x11.c:780 (01:53:04): not raising our windows
[gs_window_xevent] gs-window-x11.c:780 (01:53:04): not raising our windows
[gs_window_move_resize_window] gs-window-x11.c:455 (01:53:04): Move and/or resize window on monitor 0: x=0 y=0 w=1680 h=1050
[gs_window_raise...

Read more...

schmeii (schmeii)
Changed in gnome-screensaver:
status: New → Confirmed
assignee: nobody → desktop-bugs
Revision history for this message
Steve Langasek (vorlon) wrote :

Tested without GTK_IM_MODULE set per Seb - gnome-screensaver works fine when not using GTK_IM_MODULE=xim.

Revision history for this message
Arne Goetje (arnegoetje) wrote :

Can you please test with GTK_IM_MODULE="scim-bridge", since that is the default setting in Intrepid and Jaunty?

I can only test this on Monday UTC+1 time.

Revision history for this message
Steve Langasek (vorlon) wrote : Re: [Bug 321311] Re: gnome-screensaver dialog helper spins indefinitely, never unlocks the session, when GTK_IM_MODULE is set

On Sun, Feb 01, 2009 at 03:24:34PM -0000, Arne Goetje wrote:
> Can you please test with GTK_IM_MODULE="scim-bridge", since that is the
> default setting in Intrepid and Jaunty?

Confirmed, the problem is also present when specifying
GTK_IM_MODULE=scim-bridge.

--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
<email address hidden> <email address hidden>

Revision history for this message
Anders Kaseorg (andersk) wrote :

My duplicate bug #320666 (“But…but I reported it first!” :-P) has a stack trace with debugging symbols that might be useful for tracking down this problem. When I enter the correct password, and gnome-screensaver-dialog just sits there displaying “Checking...”, top shows that the CPU is spinning, with about 65% gnome-screensaver-dialog and 35% Xorg—during which this was captured from gnome-screensaver-dialog:

http://launchpadlibrarian.net/21666786/ThreadStacktrace.txt

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

could be http://bugzilla.gnome.org/show_bug.cgi?id=568552 which has been fixed to svn now

Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (5.9 KiB)

This bug was fixed in the package gtk+2.0 - 2.15.3-0ubuntu1

---------------
gtk+2.0 (2.15.3-0ubuntu1) jaunty; urgency=low

  * New upstream version:
    - Keyboard shortcut handling has been changed, to help with a longstanding
    complaint about the way GTK+ handles multiple layouts. GTK+ now only uses
    keys from groups other than the current group if they are not present in
    the current group. Feedback on this change is appreciated. (lp: #23244)
    - Bugs fixed:
    569336 change in gtkbutton klass is causing crash...
    569435 make maintainer-clean removes non-generated sources
    145058 Inputting "^^" requires four keystrokes on Win32...
    559408 Transparency lost when images are copied...
    359288 Toolbar items are not shown after hiding
    569918 64bit portability issue in gtkrecentchooser.c
    162726 Multiple Latin layouts in XKB break keyboard shortcuts
    569635 fontchooser should reload list of families/styles on...
  * debian/patches/071_jasper_link_fix.patch:
    - the change is in the new version

gtk+2.0 (2.15.2-0ubuntu1) jaunty; urgency=low

  * New upstream version:
    GtkAction:
    - Make toolitems pick up icon names from actions
    - Draw proxies of radio actions properly
    - Make menu proxies of recent actions work
    - Avoid accidental activations when changing actions on proxies
    - Make derived button classes work as proxies
    Input methods:
    - Avoid an assertion due to early use of input methods
    GtkScale:
    - Avoid a segfault in the marker drawing code
    GtkImageMenuItem:
    - Add a property to override the show-menu-images setting
    Bugs fixed:
    566628 gdk_display_close always asserts on win32 and quartz
    569240 Crasher when using markers
    569104 Toggle menu entries showed as check menu entries...
    322932 Always show icons on panel menus
  * debian/patches/061_use_pdf_as_default_printing_standard.patch:
    - updated to fix an implicit declaration issue (lp: #287611)

gtk+2.0 (2.15.1-0ubuntu1) jaunty; urgency=low

  * New upstream version:
    GtkFileChooser:
    - Remember the file chooser's size across invocations
    - Handle uris that are entered in the entry
    - Improve autocompletion, in particular for uris
    GtkEntry:
    - New property "im-module" for selecting input methods per-widget
    - New icon-related API got renamed for consistency
    - Added properties and setters for icon tooltips
    GtkTextView:
    - New property "im-module" for selecting input methods per-widget
    - New signal "paste-done" to allow better handling of async pasting
    GtkScale:
    - New api to add annotated marks: gtk_scale_add_mark.
    GtkAction:
    - Rework the way actions and proxies interact, to make the
      interaction less ad hoc, more extensible, and better suited
      for support in GUI builders like glade.
      To be used as a proxy, a widget must now implement the
      ` GtkActivatable interface, and GtkActivatable implementations
      are responsible for syncing their appearance with the action
      and for activating the action.
      All the widgets that are commonly used as proxies implement
      GtkActivatable now.
      This is a big change, a...

Read more...

Changed in gtk+2.0:
status: Confirmed → Fix Released
Revision history for this message
syko21 (syko21) wrote :

Using gtk-2.0 2.15.5 this bug still exists. And others are also still experiencing the problem since it is continuing to appear on the development forums.

Interesting side note, the password will be accepted and the screen will become unlocked however the screensaver will not give up focus to anything else. I hit Alt+F1 for the menu keyboard combo and was able to access it fine and Alt+F2 allowed me to run an application, however they all ran behind the screen saver.

Revision history for this message
Bobby McGee (iaskedalice09) wrote :

I'm having this bug on my inspiron 1525n laptop.

Revision history for this message
Bobby McGee (iaskedalice09) wrote :

Bug is fixed...magically for some reason. Must be the updates!

Revision history for this message
Jamie Lawler (jamie-lawler) wrote :

That's funny, because I've only just started to experience it. I think the regression happened approximately a week ago, maybe sooner. I've experienced it a few times (3 or 4) out of many more locks (40 maybe?). The only solution seems to be switching to another terminal and killing gnome-screensaver.

Revision history for this message
MCVF (marfol) wrote :

I also noticed this bug. I have fresh installation of Ubuntu 9.04 (64-bit version) with updates. When I log in it get stucked and CPU is working on 100%. Have to kill two processes from console to continue.

Revision history for this message
Rocko (rockorequin) wrote :

I've had this a occasionally with Jaunty, including just now, so it isn't fixed. gnome-screensaver was taking up 99% of CPU while it 'checked my password'. Killing gnome-screensaver didn't work - the X window didn't redraw itself, but just stayed stuck on a black screen with a white box where the 'Checking your password' window used to be. I had to reboot.

Revision history for this message
schubby (schubby) wrote :

I'm having a similar problem in Ubuntu 9.04 64-bit. I'm using AD authentication. If I lock the screen, and then put in the password to unlock, it quickly takes me back to the screensaver, and then if I move the mouse, it justs asks for the password again, and this can keep on cycling.

To get back to the session, in the Enter Password dialog, I select "Switch User", put in the same domain/user and password and it takes me into my session.

This keeps happening from time to time and it fixes itself. Then it comes back again.

Revision history for this message
Arrigo (arrigo-razzini) wrote :

Lock screen issue:
when locked, if you try to enter password and it enter, it does NOTHING.

Solution:
-rwxr-sr-x 1 root shadow 30272 2009-03-21 10:33 /sbin/unix_chkpwd
so adding shadow group to current user it worked for me.

Revision history for this message
Steve Langasek (vorlon) wrote :

> Solution:
> -rwxr-sr-x 1 root shadow 30272 2009-03-21 10:33 /sbin/unix_chkpwd
> so adding shadow group to current user it worked for me.

You should *never* have to do this to get screensaver authentication to work. Something is seriously wrong with your setup if this had any effect at all.

Revision history for this message
Arrigo (arrigo-razzini) wrote :

Sure, you're right!
Obviously my easy and quickly solution is only useful for desktop setup (household computers).
...at least now I can unlock session without restarting the x server.

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

Duplicates of this bug

Other bug subscribers

Remote bug watches

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