Unfortunately, I left out one line from my spinlock cleanup patch
recently.

As a result, using interrupt URB's could cause a deadlock on SMP
kernels.

This should fix the deadlock Greg reported.

JE

--- linux-2.4.19-pre3.orig/drivers/usb/uhci.c   Sun Mar 17 21:43:12 2002
+++ linux-2.4.19-pre3/drivers/usb/uhci.c        Sun Mar 17 21:42:06 2002
@@ -1653,6 +1653,7 @@
                /* Interrupts are an exception */
                if (urb->interval) {
                        uhci_add_complete(urb);
+                       spin_unlock_irqrestore(&urb->lock, flags);
                        return;         /* <-- note return */
                }
 

_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to