Browse Source

usb: gadget: gr_udc: unconditionally use GFP_ATOMIC in gr_queue_ext()

As far as gr_queue() is called with spinlock held,
we have to pass GFP_ATOMIC regardless of gfp argument.

Found by Linux Driver Verification project (linuxtesting.org).

Acked-by: Andreas Larsson <andreas@gaisler.com>
Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru>
Signed-off-by: Felipe Balbi <balbi@ti.com>
Alexey Khoroshilov 11 năm trước cách đây
mục cha
commit
966036fde6
1 tập tin đã thay đổi với 1 bổ sung1 xóa
  1. 1 1
      drivers/usb/gadget/gr_udc.c

+ 1 - 1
drivers/usb/gadget/gr_udc.c

@@ -1684,7 +1684,7 @@ static int gr_queue_ext(struct usb_ep *_ep, struct usb_request *_req,
 	if (ep->is_in)
 	if (ep->is_in)
 		gr_dbgprint_request("EXTERN", ep, req);
 		gr_dbgprint_request("EXTERN", ep, req);
 
 
-	ret = gr_queue(ep, req, gfp_flags);
+	ret = gr_queue(ep, req, GFP_ATOMIC);
 
 
 	spin_unlock(&ep->dev->lock);
 	spin_unlock(&ep->dev->lock);