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