Messages in this thread | | | From | Jia-Ju Bai <> | Subject | [BUG] ssb: Possible sleep-in-atomic bugs in ssb_pcmcia_read8 | Date | Mon, 9 Oct 2017 09:29:17 +0800 |
| |
According to pcmcia.c, the driver may sleep under a spinlock. The function call paths are: ssb_pcmcia_read8 (acquire the spinlock) select_core_and_segment ssb_pcmcia_switch_segment ssb_pcmcia_cfg_write pcmcia_write_config_byte pcmcia_access_config (drivers/pcmcia/pcmcia_resource.c) mutex_lock --> may sleep
ssb_pcmcia_read8 (acquire the spinlock) select_core_and_segment ssb_pcmcia_switch_segment sssb_pcmcia_cfg_read pcmcia_read_config_byte pcmcia_access_config (drivers/pcmcia/pcmcia_resource.c) mutex_lock --> may sleep
A possible fix is to use spinlock instead of mutex lock in pcmcia_access_config in drivers/pcmcia/pcmcia_resource.c.
These bugs are found by my static analysis tool and my code review.
Thanks, Jia-Ju Bai
| |