]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
iwlwifi: mvm: loosen nssn comparison to reorder buffer head
authorSara Sharon <sara.sharon@intel.com>
Wed, 30 Mar 2016 17:04:48 +0000 (20:04 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Tue, 10 May 2016 19:34:01 +0000 (22:34 +0300)
commit74dd17648c849eb401b8f4401e72628d9e7c7bd0
treec936ffa0116f9852d5bc9ae4aef67efe5706cfc2
parent7ef3dd264edbe8fdec163bf19dc9b3458e878cf4
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>
drivers/net/wireless/intel/iwlwifi/mvm/rxmq.c