lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <0bcab5c0-d938-9eb6-d21d-6b8416d75a65@gmail.com> Date: Tue, 12 Dec 2017 11:59:26 +0800 From: Jia-Ju Bai <baijiaju1990@...il.com> To: linus.walleij@...aro.org, andreas@...sler.com Cc: linux-gpio@...r.kernel.org, Linux Kernel Mailing List <linux-kernel@...r.kernel.org> Subject: [BUG] drivers/gpio: some possible sleep-in-atomic bugs According to drivers/gpio/gpio-grgpio.c, the kernel module may sleep under a spinlock. The function call paths are: grgpio_remove (acquire the spinlock) gpiochip_remove gpiochip_sysfs_unregister device_unregister --> may sleep mutex_lock --> may sleep grgpio_remove (acquire the spinlock) gpiochip_remove gpiochip_sysfs_unregister gpiod_free __gpiod_free gpiod_unexport device_unregister --> may sleep mutex_lock --> may sleep grgpio_remove (acquire the spinlock) irq_domain_remove mutex_lock --> may sleep grgpio_irq_map (acquire the spinlock) request_irq --> may sleep grgpio_irq_unmap (acquire the spinlock) free_irq --> may sleep I do not find a good way to fix them, so I only report. These possible bugs is found by my static analysis tool (DSAC) and checked by my code review. Thanks, Jia-Ju Bai
Powered by blists - more mailing lists