diff options
author | Zheng Bin <zhengbin13@huawei.com> | 2022-06-16 21:35:08 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-06-21 16:29:50 +0200 |
commit | 3d393f0303b5120aa8c98a8ee70535ea9604ef20 (patch) | |
tree | 059d5d4842dfba72762e51c29c3a2d98993252a4 /drivers/usb/gadget/udc | |
parent | 485394c63f47df18eb7498608d5fc9041c19ec13 (diff) |
usb: gadget: aspeed_udc: fix missing spin_unlock_irqrestore in ast_udc_ep_queue
ast_udc_ep_queue misses spin_unlock_irqrestore in an error path,
this patch fixes that.
Fixes: 055276c13205 ("usb: gadget: add Aspeed ast2600 udc driver")
Reviewed-by: Neal Liu <neal_liu@aspeedtech.com>
Signed-off-by: Zheng Bin <zhengbin13@huawei.com>
Link: https://lore.kernel.org/r/20220616133508.3655864-1-zhengbin13@huawei.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/gadget/udc')
-rw-r--r-- | drivers/usb/gadget/udc/aspeed_udc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/usb/gadget/udc/aspeed_udc.c b/drivers/usb/gadget/udc/aspeed_udc.c index 1fc15228ff15..6c91f7f288a2 100644 --- a/drivers/usb/gadget/udc/aspeed_udc.c +++ b/drivers/usb/gadget/udc/aspeed_udc.c @@ -665,7 +665,8 @@ static int ast_udc_ep_queue(struct usb_ep *_ep, struct usb_request *_req, if (ep->ep.desc == NULL) { if ((req->req.dma % 4) != 0) { dev_warn(dev, "EP0 req dma alignment error\n"); - return -ESHUTDOWN; + rc = -ESHUTDOWN; + goto end; } ast_udc_ep0_queue(ep, req); |