Subject: Re: [BUG] kaweth: a possible sleep-in-atomic bug in kaweth_start_xmit

From: Oliver Neukum <[email-masked]>
Date: Wed, 13 Dec 2017 10:21:29 +0100

Am Mittwoch, den 13.12.2017, 16:57 +0800 schrieb Jia-Ju Bai:
> According to drivers/net/usb/kaweth.c, the driver may sleep under a 
> spinlock.
> The function call path is:
> kaweth_start_xmit (acquire the spinlock)
>    kaweth_async_set_rx_mode
>      kaweth_control
>        kaweth_internal_control_msg
>          usb_start_wait_urb
>            wait_event_timeout --> may sleep
>            usb_kill_urb --> may sleep
> 
> I do not find a good way to fix it, so I only report.
> This possible bug is found by my static analysis tool (DSAC) and checked 
> by my code review.
> 

Hi,

thanks for reporting. I need to get out my old test device.
It will take a few days. The obvious fix would be to set this
filter only on initialization. Unfortunately this needs to
be tested.

	Regards
		Oliver