mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-18 01:34:14 +08:00
usb: host: max3421-hcd: Fix missing unlock in max3421_urb_enqueue()
Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: David Mosberger <davidm@egauge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
ff1fcd50bc
commit
00c5aa178a
@ -1545,8 +1545,10 @@ max3421_urb_enqueue(struct usb_hcd *hcd, struct urb *urb, gfp_t mem_flags)
|
||||
if (!max3421_ep) {
|
||||
/* gets freed in max3421_endpoint_disable: */
|
||||
max3421_ep = kzalloc(sizeof(struct max3421_ep), mem_flags);
|
||||
if (!max3421_ep)
|
||||
return -ENOMEM;
|
||||
if (!max3421_ep) {
|
||||
retval = -ENOMEM;
|
||||
goto out;
|
||||
}
|
||||
max3421_ep->ep = urb->ep;
|
||||
max3421_ep->last_active = max3421_hcd->frame_number;
|
||||
urb->ep->hcpriv = max3421_ep;
|
||||
@ -1561,6 +1563,7 @@ max3421_urb_enqueue(struct usb_hcd *hcd, struct urb *urb, gfp_t mem_flags)
|
||||
wake_up_process(max3421_hcd->spi_thread);
|
||||
}
|
||||
|
||||
out:
|
||||
spin_unlock_irqrestore(&max3421_hcd->lock, flags);
|
||||
return retval;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user