diff options
author | Wei Yongjun <yongjun_wei@trendmicro.com.cn> | 2013-08-18 10:13:13 +0200 |
---|---|---|
committer | Felipe Balbi <balbi@ti.com> | 2013-08-27 21:16:51 +0200 |
commit | 0b5c1e62d80c8ee43b9f8435fe54ed097dba6a3c (patch) | |
tree | d368c696e282864449cb424bc4cc06565907a663 /drivers/usb | |
parent | dma: cpp41: make it compile with CONFIG_BUG=n (diff) | |
download | linux-0b5c1e62d80c8ee43b9f8435fe54ed097dba6a3c.tar.xz linux-0b5c1e62d80c8ee43b9f8435fe54ed097dba6a3c.zip |
usb: musb: cppi41: fix missing unlock on error in cppi41_dma_callback()
Add the missing unlock before return from function cppi41_dma_callback()
in the error handling case.
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/musb/musb_cppi41.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/usb/musb/musb_cppi41.c b/drivers/usb/musb/musb_cppi41.c index e64701d15401..ae959746f77f 100644 --- a/drivers/usb/musb/musb_cppi41.c +++ b/drivers/usb/musb/musb_cppi41.c @@ -150,8 +150,10 @@ static void cppi41_dma_callback(void *private_data) remain_bytes, direction, DMA_PREP_INTERRUPT | DMA_CTRL_ACK); - if (WARN_ON(!dma_desc)) + if (WARN_ON(!dma_desc)) { + spin_unlock_irqrestore(&musb->lock, flags); return; + } dma_desc->callback = cppi41_dma_callback; dma_desc->callback_param = channel; |