Lei: It turns out that your patch setting the autosuspend delay for hubs to 0 causes problems for root hubs. They need a delay of at least 30 ms. When a child device sends a remote wakeup request, the root hub generates an interrupt. The HCD's interrupt handler sees what happened and requests a runtime resume for the root hub. However it can't tell the hub driver about the wakeup request until the port resume is finished, which takes about 25 ms. During that time, the hub driver won't know what has happened and so it will try to autosuspend. The autosuspend will fail because the port is resuming, but the hub driver will go right ahead and keep trying to autosuspend. This will continue until the port resume is complete. In order to avoid all these extra autosuspend attempts, the delay for root hubs should be set to something larger than 25 ms, such as 30 ms. Do you agree? Alan Stern -- 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