[PATCH 77/99] cw1200: Fix disabling BlockAck on scan.

Dmitry Tarnyagin dmitry.tarnyagin at stericsson.com
Wed Feb 29 14:15:24 UTC 2012


From: Szymon Bigos <szymon.bigos at tieto.com>

Traffic is measured during scan, so BlockAck was often
disabled during/after scan. Now low traffic during scan does
not increase low traffic history.

ST-Ericsson ID: 405634, 407777
ST-Ericsson FOSS-OUT ID: NA

Change-Id: Iff863c36fdbed870669a0835125249cca34954e9
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/43859
Reviewed-by: Bartosz MARKOWSKI <bartosz.markowski at tieto.com>
Tested-by: Bartosz MARKOWSKI <bartosz.markowski at tieto.com>
---
 drivers/staging/cw1200/sta.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/drivers/staging/cw1200/sta.c b/drivers/staging/cw1200/sta.c
index 085887e..41d30d6 100644
--- a/drivers/staging/cw1200/sta.c
+++ b/drivers/staging/cw1200/sta.c
@@ -1581,6 +1581,9 @@ void cw1200_ba_timer(unsigned long arg)
 	spin_lock_bh(&priv->ba_lock);
 	cw1200_debug_ba(priv, priv->ba_cnt, priv->ba_acc);
 
+	if (atomic_read(&priv->scan.in_progress))
+		goto skip_statistic_update;
+
 	ba_ena = (priv->ba_cnt >= CW1200_BLOCK_ACK_CNT &&
 			priv->ba_acc / priv->ba_cnt >= CW1200_BLOCK_ACK_THLD);
 	priv->ba_cnt = 0;
@@ -1597,6 +1600,7 @@ void cw1200_ba_timer(unsigned long arg)
 	} else if (priv->ba_hist)
 		--priv->ba_hist;
 
+skip_statistic_update:
 	spin_unlock_bh(&priv->ba_lock);
 }
 
-- 
1.7.8.3



More information about the kernel mailing list