On Tue, 2 Jul 2013, Ming Lei wrote: > ehci-hcd currently unlinks an interrupt QH when it becomes empty, that > is, after its last URB completes. This works well because in almost > all cases, the completion handler for an interrupt URB resubmits the > URB; therefore the QH doesn't become empty and doesn't get unlinked. > > When we start using tasklets for URB completion, this scheme won't work > as well. The resubmission won't occur until the tasklet runs, which > will be some time after the completion is queued with the tasklet. > During that delay, the QH will be empty and so will be unlinked > unnecessarily. > > To prevent this problem, this patch adds a 5-ms time delay before empty > interrupt QHs are unlinked. Most often, during that time the interrupt > URB will be resubmitted and thus we can avoid unlinking the QH. One little thing... > @@ -98,7 +99,6 @@ static void ehci_enable_event(struct ehci_hcd *ehci, unsigned event, > } > } > > - > /* Poll the STS_ASS status bit; see when it agrees with CMD_ASE */ > static void ehci_poll_ASS(struct ehci_hcd *ehci) > { This blank line should remain intact. Apart from that, the patch is okay. 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