From: Marek Szyprowski Date: Tue, 9 Sep 2014 08:44:10 +0000 (+0200) Subject: usb: dwc2/gadget: break infinite loop in endpoint disable code X-Git-Tag: v3.16.4~214 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a5e10292faafb9a6f470d2be42a7479cef2402a2;p=thirdparty%2Fkernel%2Fstable.git usb: dwc2/gadget: break infinite loop in endpoint disable code commit e0cbe595db72b037260bbda77106f6811a1ebb1d upstream. This patch fixes possible freeze caused by infinite loop in interrupt context. Signed-off-by: Marek Szyprowski Signed-off-by: Robert Baldyga Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/dwc2/gadget.c b/drivers/usb/dwc2/gadget.c index 70eab95ca46ae..f3198dc9937aa 100644 --- a/drivers/usb/dwc2/gadget.c +++ b/drivers/usb/dwc2/gadget.c @@ -1650,6 +1650,7 @@ static void s3c_hsotg_txfifo_flush(struct s3c_hsotg *hsotg, unsigned int idx) dev_err(hsotg->dev, "%s: timeout flushing fifo (GRSTCTL=%08x)\n", __func__, val); + break; } udelay(1);