usb: imx21-hcd: set task state with schedule_timeout_uninterruptible()
authorKulikov Vasiliy <segooon@gmail.com>
Mon, 26 Jul 2010 08:26:22 +0000 (12:26 +0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 10 Aug 2010 21:35:43 +0000 (14:35 -0700)
imx21_hc_reset() uses schedule_timeout() without setting state to
STATE_(UN)INTERRUPTIBLE. As it is called in cycle without checking of
pending signals, use schedule_timeout_uninterruptible().

Signed-off-by: Kulikov Vasiliy <segooon@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

drivers/usb/host/imx21-hcd.c

index ca0e98d..3e56303 100644 (file)
@@ -1521,7 +1521,7 @@ static int imx21_hc_reset(struct usb_hcd *hcd)
                        return -ETIMEDOUT;
                }
                spin_unlock_irq(&imx21->lock);
-               schedule_timeout(1);
+               schedule_timeout_uninterruptible(1);
                spin_lock_irq(&imx21->lock);
        }
        spin_unlock_irqrestore(&imx21->lock, flags);