mirror_ubuntu-kernels/drivers/net/wireless
Sara Sharon 74dd17648c iwlwifi: mvm: loosen nssn comparison to reorder buffer head
Up till now, the reorder buffer uses standard spec based comparison
when comparing the buffer status to NSSN. This indeed works for the
regular case, since we shouldn't cross the 2048 boundary without
getting a frame release notification.
However, this is problematic due to packet filtering that may be
performed by the FW while we are in d0i3. Theoretically we may
filter over 2048 packets, and then the check of the NSSN will get
incorrect.
Change the comparison to always trust nssn unless it is 64 or less
frames behind the head - which might happen due to a timeout.
This new comparison is to be used only when comparing reorder buffer
head with nssn, and not when comparing the packet SN to nssn or
reorder buffer head.
Put this in a separate commit as the logic is a bit tricky and
stands for its own commit message.

Signed-off-by: Sara Sharon <sara.sharon@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
2016-05-10 22:34:01 +03:00
..
admtek cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
ath cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
atmel cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
broadcom cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
cisco cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
intel iwlwifi: mvm: loosen nssn comparison to reorder buffer head 2016-05-10 22:34:01 +03:00
intersil cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
marvell cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
mediatek cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
ralink cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
realtek cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
rsi cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
st cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
ti cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
zydas cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
Kconfig mac80211_hwsim: move Kconfig entry for sorting alphabetically 2015-11-18 15:23:36 +02:00
mac80211_hwsim.c cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02: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 cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
wl3501_cs.c cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
wl3501.h