USB: dwc3: Fix spinlock recursion
As dwc3-interrupt() handles the interrupts on usb irq runs
in threaded context, which acquires the spin_lock without
disable local irq. When interrupt for transfer completion
event comes on the same CPU for the data transfer queued
to dwc3 by gsmd_start_rx() reacquires the lock results
in spinlock recursion. Fix this by changing
spin_lock/unlock() to spin_lock_irqsave/unlock_irqrestore().
CRs-Fixed: 1088909
Change-Id: I34b1ba5af355bf8d7919aac5ff248d8edaa89c22
Signed-off-by:
Arumuga Durai A <cadurai@codeaurora.org>
Loading
Please register or sign in to comment