提交 8652bcbf 编写于 作者: A Andreas Larsson 提交者: Felipe Balbi

usb: gadget: gr_udc: Use GFP_ATOMIC when allocating under held spinlock

As gr_ep_init must be called with dev->lock held, GFP_KERNEL must not be used.
Reported-by: NDan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: NAndreas Larsson <andreas@gaisler.com>
Signed-off-by: NFelipe Balbi <balbi@ti.com>
上级 b38d27e5
......@@ -1990,8 +1990,8 @@ static int gr_ep_init(struct gr_udc *dev, int num, int is_in, u32 maxplimit)
INIT_LIST_HEAD(&ep->queue);
if (num == 0) {
_req = gr_alloc_request(&ep->ep, GFP_KERNEL);
buf = devm_kzalloc(dev->dev, PAGE_SIZE, GFP_DMA | GFP_KERNEL);
_req = gr_alloc_request(&ep->ep, GFP_ATOMIC);
buf = devm_kzalloc(dev->dev, PAGE_SIZE, GFP_DMA | GFP_ATOMIC);
if (!_req || !buf) {
/* possible _req freed by gr_probe via gr_remove */
return -ENOMEM;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册