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

From: Oliver Neukum
Date: Wed Dec 13 2017 - 04:27:05 EST


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