]> git.baikalelectronics.ru Git - kernel.git/commit
wl1251: fix oops on early interrupt
authorGrazvydas Ignotas <notasas@gmail.com>
Fri, 18 May 2012 00:04:08 +0000 (03:04 +0300)
committerJohn W. Linville <linville@tuxdriver.com>
Fri, 25 May 2012 15:16:16 +0000 (11:16 -0400)
commitcc75096745518d24ac850b94dadf21ef22fd9fdb
treea2e73c632dd3e892d7997d6c4287e3eee60ca3e9
parent7e055866034932d1d31ea28a23ce28017fbfabb3
wl1251: fix oops on early interrupt

This driver disables interrupt just after requesting it and enables it
later, after interface is up. However currently there is a time window
between request_irq() and disable_irq() where if interrupt arrives, the
driver oopses because it's not yet ready to process it. This can be
reproduced by inserting the module, associating and removing the module
multiple times.

Eliminate this race by setting IRQF_NOAUTOEN flag before request_irq().

Cc: stable@vger.kernel.org # v2.6.37+
Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ti/wl1251/sdio.c
drivers/net/wireless/ti/wl1251/spi.c