linux_dsm_epyc7002/drivers/net/wireless
Larry Finger a7959c1394 rtlwifi: Preallocate USB read buffers and eliminate kalloc in read routine
The current version of rtlwifi for USB operations uses kmalloc to
acquire a 32-bit buffer for each read of the device. When
_usb_read_sync() is called with the rcu_lock held, the result is
a "sleeping function called from invalid context" BUG. This is
reported for two cases in https://bugzilla.kernel.org/show_bug.cgi?id=42775.
The first case has the lock originating from within rtlwifi and could
be fixed by rearranging the locking; however, the second originates from
within mac80211. The kmalloc() call is removed from _usb_read_sync()
by creating a ring buffer pointer in the private area and
allocating the buffer data in the probe routine.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Stable <stable@vger.kernel.org> [This version good for 3.3+ - different patch for 3.2 - 2.6.39]
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-04-11 15:01:44 -04:00
..
ath Revert "ath9k: fix going to full-sleep on PS idle" 2012-04-10 14:14:34 -04:00
b43 simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
b43legacy simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
brcm80211 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2012-03-16 13:45:25 -04:00
hostap Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-03-20 21:12:50 -07:00
ipw2x00 net/wireless: ipw2x00: fix a typo in wiphy struct initilization 2012-03-28 14:25:34 -04:00
iwlegacy Merge branch 'akpm' (Andrew's patch-bomb) 2012-04-05 15:30:34 -07:00
iwlwifi simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
iwmc3200wifi simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
libertas simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
libertas_tf drivers/net: Remove unnecessary k.alloc/v.alloc OOM messages 2012-01-31 16:20:21 -05:00
mwifiex simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
orinoco net: orinoco: add error handling for failed kmalloc(). 2012-03-28 14:25:35 -04:00
p54 p54pci: use new driver.pm interface for suspend/resume 2012-03-06 15:16:06 -05:00
prism54 Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
rt2x00 rt2x00: Fix rfkill_polling register function. 2012-04-10 14:14:28 -04:00
rtl818x rtl8187: Add AD-HOC support 2012-03-07 13:56:37 -05:00
rtlwifi rtlwifi: Preallocate USB read buffers and eliminate kalloc in read routine 2012-04-11 15:01:44 -04:00
wl12xx simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
wl1251 simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
zd1211rw Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-03-20 21:12:50 -07:00
adm8211.c drivers/net: Add module.h to drivers who were implicitly using it 2011-10-31 19:31:07 -04:00
adm8211.h
airo_cs.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
airo.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
airo.h
at76c50x-usb.c wireless: at76c50x: follow rename pack_hex_byte to hex_byte_pack 2011-10-31 17:30:57 -07:00
at76c50x-usb.h
atmel_cs.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
atmel_pci.c
atmel.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
atmel.h
Kconfig
mac80211_hwsim.c mac80211_hwsim: Fix set mactime on receiver hwsim radio 2012-03-12 14:19:35 -04:00
mac80211_hwsim.h
Makefile iwlegacy: rename remaining IWLs to ILs 2011-11-15 11:25:42 +01:00
mwl8k.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2012-02-21 15:06:35 -05:00
ray_cs.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
ray_cs.h
rayctl.h ray_cs: Fix array bounds warnings. 2011-11-26 15:41:29 -05:00
rndis_wlan.c rndis_wlan: use u8 for key indexes 2012-03-05 15:23:17 -05:00
wl3501_cs.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
wl3501.h
zd1201.c USB: convert drivers/net/* to use module_usb_driver() 2011-11-18 09:44:20 -08:00
zd1201.h