(06cb:00f9 Synaptics) fingerptint reader gets into a weird state and causes fprintd to become unresponsive to sigterms
The fingerprint reader on my laptop will randomly stop working and won't work again until a reboot. This is fprintd's log when things stop working:
● fprintd.service - Fingerprint Authentication Daemon
Loaded: loaded (/usr/lib/systemd/system/fprintd.service; static)
Drop-In: /usr/lib/systemd/system/service.d
└─10-timeout-abort.conf
Active: active (running) since Thu 2024-01-25 13:32:11 CST; 41min ago
Docs: man:fprintd(1)
Main PID: 313615 (fprintd)
Tasks: 7 (limit: 38096)
Memory: 1.7M
CPU: 82ms
CGroup: /system.slice/fprintd.service
└─313615 /usr/libexec/fprintd
Jan 25 13:32:11 fedora systemd[1]: Starting fprintd.service - Fingerprint Authentication Daemon...
Jan 25 13:32:11 fedora systemd[1]: Started fprintd.service - Fingerprint Authentication Daemon.
Jan 25 13:43:15 fedora fprintd[313615]: Authorization denied to :1.1908 to call method 'Claim' for device 'Synaptics Sensors': Device was already claimed
Jan 25 13:56:47 fedora fprintd[313615]: Authorization denied to :1.1931 to call method 'Claim' for device 'Synaptics Sensors': Device was already claimed
Jan 25 13:58:10 fedora fprintd[313615]: Authorization denied to :1.1938 to call method 'Claim' for device 'Synaptics Sensors': Device was already claimed
Jan 25 14:03:33 fedora fprintd[313615]: Authorization denied to :1.1981 to call method 'Claim' for device 'Synaptics Sensors': Device was already claimed
Jan 25 14:13:52 fedora fprintd[313615]: Authorization denied to :1.2007 to call method 'Claim' for device 'Synaptics Sensors': Device was already claimed
Jan 25 14:14:03 fedora fprintd[313615]: Authorization denied to :1.2011 to call method 'Claim' for device 'Synaptics Sensors': Device was already claimed
When I try to restart fprintd
, it doesn't respond to the sigterm (see fprintd#169):
○ fprintd.service - Fingerprint Authentication Daemon
Loaded: loaded (/usr/lib/systemd/system/fprintd.service; static)
Drop-In: /usr/lib/systemd/system/service.d
└─10-timeout-abort.conf
Active: inactive (dead)
Docs: man:fprintd(1)
Jan 25 14:14:47 fedora systemd[1]: Stopping fprintd.service - Fingerprint Authentication Daemon...
Jan 25 14:15:32 fedora systemd[1]: fprintd.service: State 'stop-sigterm' timed out. Aborting.
Jan 25 14:15:32 fedora systemd[1]: fprintd.service: Killing process 313615 (fprintd) with signal SIGABRT.
Jan 25 14:15:32 fedora systemd[1]: fprintd.service: Main process exited, code=dumped, status=6/ABRT
Jan 25 14:15:32 fedora systemd[1]: fprintd.service: Failed with result 'timeout'.
Jan 25 14:15:32 fedora systemd[1]: Stopped fprintd.service - Fingerprint Authentication Daemon.
Jan 25 14:15:32 fedora systemd[1]: Starting fprintd.service - Fingerprint Authentication Daemon...
Jan 25 14:15:33 fedora fprintd[348686]: Ignoring device due to initialization error: transfer timed out
Jan 25 14:15:33 fedora systemd[1]: Started fprintd.service - Fingerprint Authentication Daemon.
Jan 25 14:16:04 fedora systemd[1]: fprintd.service: Deactivated successfully.
After the restart fails and I try to start up fprintd
, it won't initialize the fingerprint reader (only rebooting helps):
● fprintd.service - Fingerprint Authentication Daemon
Loaded: loaded (/usr/lib/systemd/system/fprintd.service; static)
Drop-In: /usr/lib/systemd/system/service.d
└─10-timeout-abort.conf
Active: active (running) since Thu 2024-01-25 14:16:47 CST; 1s ago
Docs: man:fprintd(1)
Main PID: 349444 (fprintd)
Tasks: 6 (limit: 38096)
Memory: 1.5M
CPU: 52ms
CGroup: /system.slice/fprintd.service
└─349444 /usr/libexec/fprintd
Jan 25 14:16:47 fedora systemd[1]: Starting fprintd.service - Fingerprint Authentication Daemon...
Jan 25 14:16:47 fedora fprintd[349444]: Ignoring device due to initialization error: device sent more data than requested
Jan 25 14:16:47 fedora systemd[1]: Started fprintd.service - Fingerprint Authentication Daemon.