Commit e4bd5f50 authored by Johannes Erdfelt's avatar Johannes Erdfelt Committed by Greg Kroah-Hartman

[PATCH] uhci.c 2.4.19-pre3 interrupt deadlock

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
parent 0a615934
...@@ -1662,6 +1662,7 @@ static void uhci_transfer_result(struct uhci *uhci, struct urb *urb) ...@@ -1662,6 +1662,7 @@ static void uhci_transfer_result(struct uhci *uhci, struct urb *urb)
/* Interrupts are an exception */ /* Interrupts are an exception */
if (urb->interval) { if (urb->interval) {
uhci_add_complete(urb); uhci_add_complete(urb);
spin_unlock_irqrestore(&urb->lock, flags);
return; /* <-- note return */ return; /* <-- note return */
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment