Files
linux/drivers
Jia-Ju Bai 43b058dc21 usb: gadget: r8a66597: Fix a possible sleep-in-atomic-context bugs in r8a66597_queue()
[ Upstream commit f36b507c14 ]

The driver may sleep in an interrupt handler.
The function call path (from bottom to top) in Linux-4.16.7 is:

[FUNC] r8a66597_queue(GFP_KERNEL)
drivers/usb/gadget/udc/r8a66597-udc.c, 1193:
		r8a66597_queue in get_status
drivers/usb/gadget/udc/r8a66597-udc.c, 1301:
		get_status in setup_packet
drivers/usb/gadget/udc/r8a66597-udc.c, 1381:
		setup_packet in irq_control_stage
drivers/usb/gadget/udc/r8a66597-udc.c, 1508:
		irq_control_stage in r8a66597_irq (interrupt handler)

To fix this bug, GFP_KERNEL is replaced with GFP_ATOMIC.

This bug is found by my static analysis tool (DSAC-2) and checked by
my code review.

Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-09-05 09:26:26 +02:00
..
2018-07-22 14:28:43 +02:00
2018-07-03 11:24:56 +02:00
2018-08-17 21:01:11 +02:00
2018-06-16 09:45:14 +02:00
2018-08-24 13:08:56 +02:00
2018-08-22 07:46:11 +02:00
2018-01-17 09:45:27 +01:00
2018-08-24 13:09:06 +02:00
2018-07-25 11:25:10 +02:00
2018-08-24 13:08:55 +02:00