All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] usb: gadget: udc: lpc32xx: allocate descriptor with GFP_ATOMIC
@ 2019-05-10 12:42 ` Alexandre Belloni
  0 siblings, 0 replies; 12+ messages in thread
From: Alexandre Belloni @ 2019-05-10 12:42 UTC (permalink / raw)
  To: Felipe Balbi, Vladimir Zapolskiy, Greg Kroah-Hartman
  Cc: Sylvain Lemieux, James Grant, linux-usb, linux-arm-kernel,
	linux-kernel, Alexandre Belloni

Gadget drivers may queue request in interrupt context. This would lead to
a descriptor allocation in that context. In that case we would hit
BUG_ON(in_interrupt()) in __get_vm_area_node.

Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
---
 drivers/usb/gadget/udc/lpc32xx_udc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/gadget/udc/lpc32xx_udc.c b/drivers/usb/gadget/udc/lpc32xx_udc.c
index d8f1c60793ed..b706d9c85a35 100644
--- a/drivers/usb/gadget/udc/lpc32xx_udc.c
+++ b/drivers/usb/gadget/udc/lpc32xx_udc.c
@@ -938,7 +938,7 @@ static struct lpc32xx_usbd_dd_gad *udc_dd_alloc(struct lpc32xx_udc *udc)
 	struct lpc32xx_usbd_dd_gad	*dd;
 
 	dd = (struct lpc32xx_usbd_dd_gad *) dma_pool_alloc(
-			udc->dd_cache, (GFP_KERNEL | GFP_DMA), &dma);
+			udc->dd_cache, (GFP_ATOMIC | GFP_DMA), &dma);
 	if (dd)
 		dd->this_dma = dma;
 
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2019-06-18  8:45 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-05-10 12:42 [PATCH] usb: gadget: udc: lpc32xx: allocate descriptor with GFP_ATOMIC Alexandre Belloni
2019-05-10 12:42 ` Alexandre Belloni
2019-05-10 15:59 ` Joe Perches
2019-05-10 15:59   ` Joe Perches
2019-05-13 11:33 ` James Grant
2019-05-13 11:33   ` James Grant
2019-06-18  7:33 ` Felipe Balbi
2019-06-18  7:33   ` Felipe Balbi
2019-06-18  7:46   ` Alexandre Belloni
2019-06-18  7:46     ` Alexandre Belloni
2019-06-18  8:45     ` Felipe Balbi
2019-06-18  8:45       ` Felipe Balbi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.