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

2 messages, 2 authors, 2017-12-13 · open the first message on its own page

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

From: Jia-Ju Bai <hidden>
Date: 2017-12-13 08:57:35

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.


Thanks,
Jia-Ju Bai

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

From: Oliver Neukum <oneukum@suse.com>
Date: 2017-12-13 09:26:45

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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help