** Description changed: **Description:** On Lenovo P15v Gen 1 running Ubuntu Unity 24.04, the fingerprint reader (Synaptics `06cb:00bd`) disconnects during PAM authentication after resuming from suspend. The root cause is that the integrated camera (IMC Networks `13d3:56fb`, driver `uvcvideo`) triggers a USB hub reset (`usb 1-8: reset high-speed USB device`) which causes the fingerprint reader on the same internal USB hub to disconnect and reconnect with a new device number. This makes fingerprint authentication fail on the first attempt after every resume from suspend. The user must press Enter to restart the PAM authentication cycle, at which point the fingerprint reader has reconnected and works correctly. **Steps to reproduce:** 1. Suspend the system (`systemctl suspend`) 2. Resume from suspend 3. The lock screen appears and requests fingerprint authentication 4. Place finger on reader → no response, authentication fails with `verify-unknown-error` 5. Press Enter → fingerprint authentication works correctly on second attempt **Expected behavior:** Fingerprint authentication works on first attempt after resume from suspend. **Actual behavior:** Camera (`usb 1-8`) resets during authentication, causing fingerprint reader (`usb 1-9`) to disconnect mid-authentication: ``` kernel: usb 1-8: reset high-speed USB device number 3 using xhci_hcd kernel: usb 1-9: USB disconnect, device number 14 fprintd: Device reported an error during verify: device was disconnected compiz: pam_fprintd(unity:auth): Verify result: verify-unknown-error (done: 1) kernel: usb 1-9: New USB device found, idVendor=06cb, idProduct=00bd ``` **System information:** - **Machine:** Lenovo ThinkPad P15v Gen 1 - **OS:** Ubuntu Unity 24.04 - **Kernel:** 6.8.0-106-generic - **Fingerprint reader:** Synaptics Prometheus MIS `06cb:00bd`, driver `[none]` - **Camera:** IMC Networks / Azurewave Integrated Camera `13d3:56fb`, driver `uvcvideo` - **Display manager:** LightDM with Compiz/Unity - **fprintd version:** 1.94.3-1 **Additional information:** The camera and fingerprint reader share the same internal USB hub (Bus 001, xhci_hcd). The camera has `power/control=auto` and `autosuspend_delay_ms=2000` by default, causing it to reset after resume which disrupts the fingerprint reader. Setting `power/control=on` for the camera via udev rules does not prevent the reset at resume time as the rule is applied too late. + + **Additional contributing factor — fwupd:** + + `fwupd` (firmware update daemon) also accesses the fingerprint reader + immediately after resume, causing additional disconnect/reconnect + cycles: + + ``` + kernel: usb 1-9: usbfs: process XXXX (fwupd) did not claim interface 0 before use + kernel: usb 1-9: USB disconnect + kernel: usb 1-9: New USB device found, idVendor=06cb, idProduct=00bd + ``` + + **Workaround applied:** A systemd-sleep script stops `fwupd` before + suspend and restarts it 5 seconds after resume, preventing it from + accessing the fingerprint reader during the critical authentication + window. + + ```bash + # /lib/systemd/system-sleep/fwupd-sleep.sh + if [ "$1" = "pre" ]; then + systemctl stop fwupd + elif [ "$1" = "post" ]; then + sleep 5 + systemctl start fwupd + fi + ```
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2145186 Title: Fingerprint reader disconnects during authentication after suspend due to camera USB hub reset To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2145186/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
