According to drivers/net/wireless/wl3501_cs.c, the driver may sleep
under a spinlock.
The function call path is:
wl3501_reset (acquire the spinlock)
free_irq --> 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