Bug 614573 - fprintd blocks screen unlock
fprintd blocks screen unlock
Status: CLOSED CURRENTRELEASE
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: fprintd (Show other bugs)
6.0
All Linux
low Severity medium
: rc
: ---
Assigned To: Bastien Nocera
desktop-bugs@redhat.com
:
: 613970 (view as bug list)
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2010-07-14 15:11 EDT by Dan Williams
Modified: 2010-11-10 15:24 EST (History)
8 users (show)

See Also:
Fixed In Version: fprintd-0.1-19.git04fd09cfa.el6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-11-10 15:24:18 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
screensaver log from launch until password timeout (14.47 KB, text/plain)
2010-07-14 15:36 EDT, Dan Williams
no flags Details
log from 2.28.3-5.el6 with *works* (10.82 KB, text/plain)
2010-07-14 15:45 EDT, Dan Williams
no flags Details

  None (edit)
Description Dan Williams 2010-07-14 15:11:10 EDT
fprintd appears to block unlocking the screen when it's locked via inactivity or via Ctl+Alt+L.  I'm able to log in using my password, but after locking the screen I'm unable to unlock it.

gnome-screensaver takes my password and hangs in "Checking..." until it times the auth attempt out.  I know the password is correct.

I can work around the issue by commenting out the:

auth sufficient pam_fprintd.so

line in my /etc/pam.d/system-auth file.  I can *also* work around the issue by moving the /usr/share/dbus-1/system-services/net.reactivated.Fprint.service file to prevent fprintd from loading.

I have not enrolled any fingerprints on my system, and this is an up-to-date install of RHEL6 as of 2010-07-14.
Comment 2 Dan Williams 2010-07-14 15:36:17 EDT
Created attachment 431885 [details]
screensaver log from launch until password timeout
Comment 3 Dan Williams 2010-07-14 15:40:56 EDT
gnome-screensaver-2.28.3-7.el6.i686
fprintd-0.1-18.git04fd09cfa.el6.i686
Comment 4 Dan Williams 2010-07-14 15:45:44 EDT
Created attachment 431886 [details]
log from 2.28.3-5.el6 with *works*
Comment 5 Dan Williams 2010-07-14 15:47:51 EDT
So downgrading to gnome-screensaver-2.28.3-5.el6 makes things work again.
Comment 6 Dan Williams 2010-07-14 16:03:06 EDT
THe problem appears to be caused by patch #14, remove-theme-support.patch.  Builds without that patch do not exhibit the hang.
Comment 7 Ray Strode [halfline] 2010-07-15 16:46:53 EDT
can't unlock screen is a serious blocker, devack+
Comment 8 Ray Strode [halfline] 2010-07-27 09:56:17 EDT
I spent some time trying to reproduce this yesterday and came up short.  I also read through the patch and can't come up with anything immediately plausible.

We can always revert the patch I guess, but I'd like to avoid that if possible.

Roderick, any chance you could set up a test user that I could remotely debug with?
Comment 9 Ray Strode [halfline] 2010-07-27 18:20:41 EDT
So Roderick McCloud (Dan Williams) set up vnc on his machine and I was able to reproduce.  It took several hours for me to figure out the problem, but it turns out to be an issue in pam_fprintd. 

pam_fprintd is very careful to use its own main loop context (as it should) to prevent getting in the way of the gnome-screensaver.

Unfortunately, there's a small bug in its logic where it ends up removing a random file descriptor from the default context.  In Dan's case that file descriptor is really important.  It's what tells gnome-screensaver when to drop the dialog.

The patch is as simple as:

-			g_source_remove (timeout_id);
+			g_source_destroy (source);

(g_source_remove always operates on the default context)

marking MODIFIED
Comment 11 Ray Strode [halfline] 2010-07-29 09:54:09 EDT
*** Bug 613970 has been marked as a duplicate of this bug. ***
Comment 12 Vladimir Benes 2010-08-04 08:50:05 EDT
cannot see this error any more in snapshot 9
-> VERIFIED
Comment 13 releng-rhel@redhat.com 2010-11-10 15:24:18 EST
Red Hat Enterprise Linux 6.0 is now available and should resolve
the problem described in this bug report. This report is therefore being closed
with a resolution of CURRENTRELEASE. You may reopen this bug report if the
solution does not work for you.

Note You need to log in before you can comment on or make changes to this bug.