mirror_ubuntu-kernels/drivers/net/wireless/ath
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
..
ar5523 mac80211: convert HW flags to unsigned long bitmap 2015-06-10 16:05:36 +02:00
ath5k ath5k: fix RTS/CTS by using proper rate flags 2015-12-08 16:50:24 +02:00
ath6kl ath6kl: add log messages for firmware failure cases. 2015-12-11 14:08:55 +02:00
ath9k ath9k: fix ath9k_hw_nvram_check_version() 2016-01-07 15:16:15 +02:00
ath10k ath10k: set SM power save disabled to default value 2016-01-07 14:56:23 +02:00
carl9170 Major changes: 2015-10-12 19:39:18 -07:00
wcn36xx wcn36xx: handle rx skb allocation failure to avoid system crash 2016-01-07 15:16:17 +02:00
wil6210 wil6210: support for platform specific crash recovery 2016-01-07 15:00:44 +02:00
ath.h ath9k: Add a new debug flag for FFT spectral scan 2015-05-09 16:46:08 +03:00
debug.c ath: Make ath_opmode_to_string understand OCB mode 2015-08-10 22:21:15 +03:00
dfs_pattern_detector.c ath: fix DFS timestamp wraparound reset condition 2015-10-09 11:47:31 +03:00
dfs_pattern_detector.h ath: use PRI value given by spec for fixed PRI 2015-09-27 15:50:30 +03:00
dfs_pri_detector.c ath: use PRI value given by spec for fixed PRI 2015-09-27 15:50:30 +03:00
dfs_pri_detector.h
hw.c
Kconfig ath: unify Kconfig with other vendors 2015-11-18 14:28:31 +02:00
key.c
main.c
Makefile
reg.h
regd_common.h
regd.c
regd.h
spectral_common.h
trace.c
trace.h