linux/drivers/net/wireless
Larry Finger a5ffbe0a19 rtlwifi: Fix scheduling while atomic bug
Kernel commits 41affd5 and 6539306 changed the locking in rtl_lps_leave()
from a spinlock to a mutex by doing the calls indirectly from a work queue
to reduce the time that interrupts were disabled. This change was fine for
most systems; however a scheduling while atomic bug was reported in
https://bugzilla.redhat.com/show_bug.cgi?id=903881. The backtrace indicates
that routine rtl_is_special(), which calls rtl_lps_leave() in three places
was entered in atomic context. These direct calls are replaced by putting a
request on the appropriate work queue.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Reported-and-tested-by: Nathaniel Doherty <ntdoherty@gmail.com>
Cc: Nathaniel Doherty <ntdoherty@gmail.com>
Cc: Stanislaw Gruszka <sgruszka@redhat.com>
Cc: Stable <stable@vger.kernel.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2013-02-04 16:41:56 -05:00
..
ath ath9k: allow setting arbitrary antenna masks on AR9003+ 2013-01-22 14:33:44 -05:00
b43 b43: Fix firmware loading when driver is built into the kernel 2013-01-07 14:34:45 -05:00
b43legacy Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2012-12-11 16:24:55 -05:00
brcm80211 brcmsmac: fix tx status processing 2013-01-28 14:48:52 -05:00
hostap wireless: drivers: make use of WLAN_EID_VENDOR_SPECIFIC 2012-10-18 09:01:54 +02:00
ipw2x00 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-12-13 12:00:02 -08:00
iwlegacy iwlegacy: fix IBSS cleanup 2013-01-22 14:33:43 -05:00
iwlwifi Revert "iwlwifi: fix the reclaimed packet tracking upon flush queue" 2013-01-24 12:54:24 +01:00
libertas libertas: remove __dev* attributes 2012-12-06 15:04:57 -05:00
libertas_tf mac80211: move TX station pointer and restructure TX 2012-07-31 16:18:39 +02:00
mwifiex mwifiex: fix incomplete scan in case of IE parsing error 2013-01-30 14:13:09 -05:00
orinoco orinoco: remove __dev* attributes 2012-12-06 15:04:58 -05:00
p54 p54usb: add USBIDs for two more p54usb devices 2013-01-02 14:38:30 -05:00
prism54 wireless: Remove casts to same type 2012-06-06 09:31:33 -07:00
rt2x00 rt2x00: zero-out rx_status 2012-12-17 15:45:17 -05:00
rtl818x rtl8187: remove __dev* attributes 2012-12-06 15:04:59 -05:00
rtlwifi rtlwifi: Fix scheduling while atomic bug 2013-02-04 16:41:56 -05:00
ti wlcore/wl18xx/wl12xx: remove __dev* attributes 2012-12-06 15:04:59 -05:00
zd1211rw treewide: fix typo of "suppport" in various comments 2012-11-19 14:13:52 +01:00
Kconfig drivers: remove reference to feature-removal-schedule.txt 2012-12-17 17:15:12 -08:00
Makefile wireless: fix Atheros drivers compilation 2012-12-17 15:48:43 -05:00
adm8211.c wireless: remove __dev* attributes 2012-12-06 15:04:55 -05:00
adm8211.h
airo.c wireless: remove __dev* attributes 2012-12-06 15:04:55 -05:00
airo.h
airo_cs.c
at76c50x-usb.c wireless: Convert dev_printk(KERN_<LEVEL> to dev_<level>( 2012-11-14 14:55:32 -05:00
at76c50x-usb.h
atmel.c treewide: fix typo of "suport" in various comments and Kconfig 2012-11-19 14:16:09 +01:00
atmel.h
atmel_cs.c
atmel_pci.c atmel: remove __dev* attributes 2012-12-06 15:04:56 -05:00
mac80211_hwsim.c wireless: fix VHT max AMPDU exponent definition 2012-12-06 14:02:51 +01:00
mac80211_hwsim.h
mwl8k.c drivers/net/wireless/mwl8k.c: avoid use-after-free 2013-01-07 14:34:44 -05:00
ray_cs.c wireless: Remove casts to same type 2012-06-06 09:31:33 -07:00
ray_cs.h
rayctl.h
rndis_wlan.c cfg80211: pass a channel definition struct 2012-11-26 12:42:58 +01:00
wl3501.h
wl3501_cs.c wl3501_cs: use is_broadcast_ether_addr() instead of memcmp() 2012-09-07 15:03:40 -04:00
zd1201.c USB: Disable hub-initiated LPM for comms devices. 2012-05-18 15:42:55 -07:00
zd1201.h