USB System hangs after removing Yubikey

Joseph Ward jbwlists at hilltopgroup.com
Sat Jun 20 17:04:03 UTC 2020


I'm running FreeBSD 12.1-RELEASE-p4, and when the system boots with a
Yubikey present (or I believe the first time I insert it), the key will
work appropriately as a U2F token, or a keyboard input as needed.

However, after I detach it (sometimes it's the second or third time I
detach it), the USB system seems to just hang.  The USB mouse continues
to work fortunately, but any new USB device I attach isn't recognized
(no dmesg messages at all).

I'm not even sure where to start; I've googled as much as I can and have
found very little with which to troubleshoot.

"usbconfig" or "usbconfig list" just hangs; ctrl-c will break out of it,
but otherwise it'll just hang with no return on the terminal.


My latest dmesg shows the yubikey connecting, and then disconnecting
when I legitimately pull it out), and then when I put it back in, nothing.

ugen0.8: <Yubico YubiKey OTP+FIDO+CCID> at usbus0
ukbd0 on uhub2
ukbd0: <Yubico YubiKey OTP+FIDO+CCID, class 0/0, rev 2.00/5.24, addr 8>
on usbus0
kbd2 at ukbd0
uhid0 on uhub2
uhid0: <Yubico YubiKey OTP+FIDO+CCID, class 0/0, rev 2.00/5.24, addr 8>
on usbus0
ugen0.8: <Yubico YubiKey OTP+FIDO+CCID> at usbus0 (disconnected)
ukbd0: at uhub2, port 4, addr 8 (disconnected)
ukbd0: detached
uhid0: at uhub2, port 4, addr 8 (disconnected)

I run usbdump, and the only traffic I see is going to the mouse and the
USB hub where nothing but my mouse is (that's continuing to function). 
A sample:

13:01:30.716809 usbus0.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=10
13:01:30.724804 usbus0.3
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=10,ERR=0
13:01:30.724815 usbus0.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=10
13:01:30.732803 usbus0.3
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=10,ERR=0
13:01:30.732810 usbus0.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=10
13:01:30.740805 usbus0.3
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=10,ERR=0
13:01:30.740815 usbus0.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=10
13:01:30.748803 usbus0.3
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=10,ERR=0
13:01:30.748811 usbus0.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=10
13:01:30.756805 usbus0.3
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=10,ERR=0
13:01:30.756818 usbus0.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=10
13:01:30.764803 usbus0.3
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=10,ERR=0
13:01:30.764813 usbus0.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=10
13:01:30.772805 usbus0.3
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=10,ERR=0
13:01:30.772818 usbus0.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=10
13:01:30.780804 usbus0.3
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=10,ERR=0
13:01:30.780812 usbus0.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=10
13:01:30.788790 usbus0.6
DONE-INTR-EP=00000081,SPD=HIGH,NFR=1,SLEN=4,IVAL=250,ERR=0
13:01:30.788792 usbus0.6
SUBM-INTR-EP=00000081,SPD=HIGH,NFR=1,SLEN=0,IVAL=250
13:01:30.916691 usbus0.6
DONE-INTR-EP=00000081,SPD=HIGH,NFR=1,SLEN=4,IVAL=250,ERR=0
13:01:30.916700 usbus0.6
SUBM-INTR-EP=00000081,SPD=HIGH,NFR=1,SLEN=0,IVAL=250
13:01:30.956793 usbus0.3
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=10,ERR=0
13:01:30.956797 usbus0.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=10
13:01:31.044693 usbus0.6
DONE-INTR-EP=00000081,SPD=HIGH,NFR=1,SLEN=4,IVAL=250,ERR=0
13:01:31.044702 usbus0.6
SUBM-INTR-EP=00000081,SPD=HIGH,NFR=1,SLEN=0,IVAL=250
13:01:31.076792 usbus0.3
DONE-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=4,IVAL=10,ERR=0
13:01:31.076796 usbus0.3 SUBM-INTR-EP=00000081,SPD=LOW,NFR=1,SLEN=0,IVAL=10
13:01:31.172691 usbus0.6
DONE-INTR-EP=00000081,SPD=HIGH,NFR=1,SLEN=4,IVAL=250,ERR=0
13:01:31.172699 usbus0.6
SUBM-INTR-EP=00000081,SPD=HIGH,NFR=1,SLEN=0,IVAL=250
13:01:31.300691 usbus0.6
DONE-INTR-EP=00000081,SPD=HIGH,NFR=1,SLEN=4,IVAL=250,ERR=0
13:01:31.300699 usbus0.6
SUBM-INTR-EP=00000081,SPD=HIGH,NFR=1,SLEN=0,IVAL=250

dmesg | grep -E '0\.3|0\.6'
ugen0.3: <Microsoft Microsoft 3-Button Mouse with IntelliEye(TM)> at usbus0
ugen0.6: <VIA Labs, Inc. USB2.0 Hub> at usbus0
ugen0.3: <Microsoft Microsoft 3-Button Mouse with IntelliEye(TM)> at usbus0
ugen0.6: <VIA Labs, Inc. USB2.0 Hub> at usbus0


The only thing I've been able to do to "fix" it is reboot the system. 

Can anyone propose any other troubleshooting steps I should take?


Thanks in advance,

Joseph Ward



More information about the freebsd-usb mailing list