On Wed, 8 Mar 2023 17:16:01 +0200 Mathias Nyman <mathias.nyman@xxxxxxxxxxxxxxx> wrote: > Looks like that those devices initially enumerated fine, but suddenly > disconnect about 19 seconds after boot. > > [ 19.155556] usb 2-1.1: USB disconnect, device number 4 > [ 19.155685] cp210x ttyUSB0: cp210x converter now disconnected from > ttyUSB0 [ 19.159290] usb 2-1.4: USB disconnect, device number 6 > [ 19.242344] usb 2-1.4: 3:0: failed to get current value for ch 0 > (-22) [ 20.100761] usb 2-4.1: USB disconnect, device number 8 > [ 20.100894] cp210x ttyUSB1: cp210x converter now disconnected from > ttyUSB1 [ 20.100999] cp210x 2-4.1:1.0: device disconnected > [ 20.107188] usb 2-4.2: USB disconnect, device number 9 > [ 20.107253] cp210x ttyUSB2: cp210x converter now disconnected from > ttyUSB2 [ 20.107284] cp210x 2-4.2:1.0: device disconnected > [ 20.111938] usb 2-4.4: USB disconnect, device number 10 > [ 20.181363] usb 2-4.4: 3:0: failed to get current value for ch 0 > (-22) > > Interestingly those are all the devices behind external hubs. These are in amateur radio gear, providing sound card modems and radio CAT control on USB2 ports, but they have given no trouble since the Renesas USB3 PCI card ROM load bug was sorted out a couple of years ago I think. > > Bisecting this to find the offending commit would be best, but a dmesg > with xhci and usb core dynamic debug enabled could also show why > those devices disconnect. > > Adding "usbcore.dyndbg=+p xhci_hcd.dyndbg=+p" to your kernel cmdline > should do this. OK, I have done this and attached the dmesg output (which has expanded by a factor of 3 with the extra debug). A quick grep reveals these which are not expected: [bdm@deangelis ~]$ grep usb_disable_device dmesg_6.2.2_debug.txt [ 18.349015] usb 2-1.1: usb_disable_device nuking all URBs [ 18.587034] usb 2-1.4: usb_disable_device nuking all URBs [ 18.589675] usb 2-1: usb_disable_device nuking non-ep0 URBs [ 19.280599] usb 2-2: usb_disable_device nuking non-ep0 URBs [ 19.288312] usb 2-4.1: usb_disable_device nuking all URBs [ 19.298113] usb 2-4.2: usb_disable_device nuking all URBs [ 19.386494] usb 2-4.4: usb_disable_device nuking all URBs [ 19.390100] usb 2-4: usb_disable_device nuking non-ep0 URBs which are then followed by: xhci_drop_endpoint from the xhci_hcd driver which seems expected given the usb_disable_device being commanded. That's about as far as I know how to go, I have not copied this to the linux-usb list because of the size of the attachment, I have added that to the redhat bug at: https://bugzilla.redhat.com/show_bug.cgi?id=2175534 I suppose this should get to the list without the attachment. -- Brian Morrison