On 04.05.2015 23:00, Chris Bainbridge wrote: > I booted 200 times, and the USB2 of the hub failed to come up three times. > > This happened twice: > > [ 7.320961] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command > [ 8.826673] xhci_hcd 0000:00:14.0: xHCI host not responding to stop endpoint command. > > I haven't seen that particular error sequence before - it also resulted in > `lsusb` hanging, which hasn't happened before in my testing. > > This happened once: > > [ 5.785880] xhci_hcd 0000:00:14.0: Timeout while waiting for setup device command > [ 5.987246] usb 2-3: new SuperSpeed USB device number 2 using xhci_hcd > Thanks for testing. Looks like fixing addr_dev and slot_id wasn't enough. It took down the failure rate from 8% -> 1.5% Seems that we need to add the mutex for xhci_setup_device() anyway. Just found an additional note in the xhci specs section 4.5.3 saying that: "Note: Software shall not transition more than one Device Slot to the Default State at a time" which is what xhci_setup_device() does in addition to moving slots to the addressed state I'll add your patch and send it forward once Greg is back. -Mathias -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html