linux/drivers/net/wireless
Gertjan van Wingerde 11885cd854 rt2x00: Fix sleep-while-atomic bug in powersaving code.
commit ed66ba472a upstream.

The generic powersaving code that determines after reception of a frame
whether the device should go back to sleep or whether is could stay
awake was calling rt2x00lib_config directly from RX tasklet context.
On a number of the devices this call can actually sleep, due to having
to confirm that the sleeping commands have been executed successfully.

Fix this by moving the call to rt2x00lib_config to a workqueue call.

This fixes bug https://bugzilla.redhat.com/show_bug.cgi?id=731672

Tested-by: Tomas Trnka <tomastrnka@gmx.com>
Signed-off-by: Gertjan van Wingerde <gwingerde@gmail.com>
Acked-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-11-26 09:09:54 -08:00
..
ath ath9k_hw: Fix regression of register offset for AR9003 chips 2011-11-11 09:37:18 -08:00
b43 b43: refuse to load unsupported firmware 2011-11-21 14:31:22 -08:00
b43legacy Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem 2011-05-16 19:32:19 -04:00
hostap net: Audit drivers to identify those needing IFF_TX_SKB_SHARING cleared 2011-08-15 18:31:38 -07:00
ipw2x00 treewide: fix a few typos in comments 2011-05-10 10:16:21 +02:00
iwlegacy iwlegacy: do not use interruptible waits 2011-10-03 11:41:12 -07:00
iwlwifi iwlagn: do not use interruptible waits 2011-11-11 09:36:30 -08:00
iwmc3200wifi Merge ssh://master.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem 2011-05-24 16:47:54 -04:00
libertas Net, libertas: Resolve memory leak in if_spi_host_to_card() 2011-11-26 09:09:54 -08:00
libertas_tf
mwifiex mwifiex: Fixing NULL pointer dereference 2011-06-15 08:13:03 -04:00
orinoco pcmcia: Convert pcmcia_device_id declarations to const 2011-05-06 07:46:22 +02:00
p54 Merge ssh://master.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem 2011-05-24 16:47:54 -04:00
prism54
rt2x00 rt2x00: Fix sleep-while-atomic bug in powersaving code. 2011-11-26 09:09:54 -08:00
rtl818x
rtlwifi rtlwifi: rtl8192cu: Fix unitialized struct 2011-10-03 11:41:11 -07:00
wl12xx wl12xx: fix forced passive scans 2011-11-11 09:35:52 -08:00
wl1251
zd1211rw zd1211rw: fix to work on OHCI 2011-05-31 14:47:26 -04:00
adm8211.c
adm8211.h
airo_cs.c pcmcia: Convert pcmcia_device_id declarations to const 2011-05-06 07:46:22 +02:00
airo.c net: Audit drivers to identify those needing IFF_TX_SKB_SHARING cleared 2011-08-15 18:31:38 -07:00
airo.h
at76c50x-usb.c
at76c50x-usb.h
atmel_cs.c pcmcia: Convert pcmcia_device_id declarations to const 2011-05-06 07:46:22 +02:00
atmel_pci.c
atmel.c
atmel.h
Kconfig
mac80211_hwsim.c net: call dev_alloc_name from register_netdevice 2011-05-05 10:57:45 -07:00
Makefile
mwl8k.c mwl8k: Tell firmware to generate CCMP header 2011-06-15 08:13:03 -04:00
ray_cs.c pcmcia: Convert pcmcia_device_id declarations to const 2011-05-06 07:46:22 +02:00
ray_cs.h
rayctl.h
rndis_wlan.c cfg80211: Use consistent BSS matching between scan and sme 2011-05-19 10:37:18 -04:00
wl3501_cs.c pcmcia: Convert pcmcia_device_id declarations to const 2011-05-06 07:46:22 +02:00
wl3501.h
zd1201.c
zd1201.h