2017-12-12 03:34:34

by Jia-Ju Bai

[permalink] [raw]
Subject: [BUG] 3com/3c59x: two possible sleep-in-atomic bugs

According to drivers/net/ethernet/3com/3c59x.c, the kernel module may
sleep in the interrupt handler.
The function call paths are:
boomerang_interrupt (interrupt handler)
vortex_error
vortex_up
pci_set_power_state --> may sleep
pci_enable_device --> may sleep

vortex_interrupt (interrupt handler)
vortex_error
vortex_up
pci_set_power_state --> may sleep
pci_enable_device --> may sleep

I do not find a good way to fix them, so I only report.
These possible bugs are found by my static analysis tool (DSAC) and
checked by my code review.


Thanks,
Jia-Ju Bai