Alan Stern 361aabf395 USB: EHCI: don't lose events during a scan
This patch (as1584) fixes a minor bug that has been present in
ehci-hcd since the beginning.

Scanning the schedules for URB completions is single-threaded.  If a
completion interrupt occurs while an URB is being given back, the
interrupt handler realizes that a scan is in progress on another CPU
and avoids starting a new one.

This means that completion events can be lost.  If an URB completes
after it has been scanned but while a scan is still in progress, the
driver won't notice and won't rescan the completed URB.

The patch fixes the problem by adding a new flag to indicate that
another scan is needed after the current scan is done.  The flag gets
set whenever a completion interrupt occurs while a scan is in
progress.  The rescan will see the completion, thus preventing it from
getting lost.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-07-16 16:56:47 -07:00
..
2012-05-26 12:22:27 -07:00
2012-06-20 14:39:36 -07:00
2012-05-24 16:22:53 -04:00
2012-05-26 12:42:29 -07:00
2012-05-23 14:07:06 -07:00
2012-05-22 16:02:13 -07:00
2012-07-04 15:55:19 +08:00
2012-07-13 09:56:26 -07:00
2012-07-11 12:44:25 -07:00
2012-05-22 16:02:13 -07:00
2012-07-10 19:16:25 +10:00
2012-07-11 16:17:14 -07:00
2012-05-26 12:42:29 -07:00
2012-06-15 17:17:15 -07:00
2012-05-22 16:34:21 -07:00
2012-05-26 12:22:27 -07:00