[adm5120] fix an unbalanced spinlock issue
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 11 Nov 2007 17:56:32 +0000 (17:56 +0000)
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sun, 11 Nov 2007 17:56:32 +0000 (17:56 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9540 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/adm5120/files/drivers/usb/host/adm5120-hcd.c

index 14fd0f96f20f851f5d48b5c9a1ba14f5231b2116..fe60783e5a14a072c488483c5e22bc5393869389 100644 (file)
@@ -682,9 +682,9 @@ static irqreturn_t admhc_irq(struct usb_hcd *hcd)
 
        if (ints & ADMHC_INTR_SOFI) {
                admhc_intr_ack(ahcd, ADMHC_INTR_SOFI);
+               spin_lock(&ahcd->lock);
                /* handle any pending ED removes */
                admhc_finish_unlinks(ahcd, admhc_frame_no(ahcd));
-               spin_lock(&ahcd->lock);
                admhc_sof_refill(ahcd);
                spin_unlock(&ahcd->lock);
        }