linux/drivers/net/wireless
Fengwei Yin 2ec7752fd9 wcn36xx: handle rx skb allocation failure to avoid system crash
Lawrence reported that git clone could make system crash on a
Qualcomm ARM soc based device (DragonBoard, 1G memory without
swap) running 64bit Debian.

It's turned out the crash is related with rx skb allocation
failure. git could consume more than 600MB anonymous memory.
And system is in extremely memory shortage case.

But driver didn't handle the rx allocation failure case. This patch
doesn't submit skb to upper layer if rx skb allocation fails.
Instead, it reuse the old skb for rx DMA again. It's more like
drop the packets if system is in memory shortage case.

With this change, git clone is OOMed instead of system crash.

Reported-by: King, Lawrence <lking@qti.qualcomm.com>
Signed-off-by: Fengwei Yin <fengwei.yin@linaro.org>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2016-01-07 15:16:17 +02:00
..
admtek adm80211: move under admtek vendor directory 2015-11-17 19:49:19 +02:00
ath wcn36xx: handle rx skb allocation failure to avoid system crash 2016-01-07 15:16:17 +02:00
atmel atmel: move under atmel vendor directory 2015-11-18 11:19:07 +02:00
broadcom brcmfmac: Move scheduled scan related interface layer structs 2015-12-11 13:52:22 +02:00
cisco wireless: airo: re-use mac_pton() 2015-11-30 14:59:28 +02:00
intel iwlegacy: mark il_adjust_beacon_interval as noinline 2015-12-11 13:50:14 +02:00
intersil prism54: fix compare_const_fl.cocci warnings 2015-12-11 13:47:47 +02:00
marvell mwifiex: fix semicolon.cocci warnings 2015-12-11 13:40:21 +02:00
mediatek mediatek: unify Kconfig with other vendors 2015-11-18 14:28:31 +02:00
ralink rt2x00: type bug in _rt2500usb_register_read() 2015-11-30 14:57:49 +02:00
realtek rtlwifi: fix memory leak for USB device 2015-12-11 13:48:42 +02:00
rsi rsi: add vendor Kconfig entry 2015-11-18 14:28:31 +02:00
st cw1200: remove some dead code 2015-12-11 13:15:08 +02:00
ti wlcore/wl12xx: spi: fix oops on firmware load 2015-12-11 13:54:23 +02:00
zydas zd1211rw: move under zydas vendor directory 2015-11-18 14:28:30 +02:00
Kconfig mac80211_hwsim: move Kconfig entry for sorting alphabetically 2015-11-18 15:23:36 +02:00
mac80211_hwsim.c mac80211_hwsim: check ATTR_FREQ for wmediumd (netlink) packets 2015-12-04 14:43:32 +01:00
mac80211_hwsim.h
Makefile ath: unify Kconfig with other vendors 2015-11-18 14:28:31 +02:00
ray_cs.c ray_cs: Change 1 to true for bool type variable. 2015-06-02 23:30:14 +03:00
ray_cs.h
rayctl.h
rndis_wlan.c rndis_wlan: fix checking for default value 2015-09-22 16:14:32 -07:00
wl3501_cs.c
wl3501.h