bings
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Saenz Julienne <nicolassaenzj@gmeil.com>2016-08-16 10:22:38 +0100
committerFelipe Balbi <felipe.balbi@linux.intel.com>2016-08-22 10:45:13 +0300
commitd6011f6fc21b4d4ab1586f01c4f62becaa0a28d7 (patch)
tree26cd4cb81813fa12e4d55f39e9e9e3b49268827b
parentf4693b08cc901912a87369c46537b94ed4084ea0 (diff)
usb: dwc3: gadget: don't rely on jiffies while holding spinlock
__dwc3_gadget_wakeup() is called while holding a spinlock, then depends on jiffies in order to timeout while polling the USB core for a link state update. In the case the wakeup failed, the timeout will never happen and will also cause the cpu to stall until rcu_preempt kicks in. This switches to a "decrement variable and wait" timeout scheme. Signed-off-by: Nicolas Saenz Julienne <nicolassaenzj@gmail.com> Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>