On Monday 09 May 2011 02:58 PM, Vasanth Thiagarajan wrote:
On Mon, May 09, 2011 at 10:00:17AM +0530, Mohammed Shajakhan wrote:
On Friday 06 May 2011 09:45 PM, Vasanth Thiagarajan wrote:
On Fri, May 06, 2011 at 09:24:51PM +0530, Mohammed Shafi Shajakhan wrote:
From: Mohammed Shafi Shajakhan<mshajakhan@xxxxxxxxxxx>
Signed-off-by: Mohammed Shafi Shajakhan<mshajakhan@xxxxxxxxxxx>
---
drivers/net/wireless/ath/ath9k/main.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
index 3de115d..2b78ea2 100644
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -2267,7 +2267,7 @@ static void ath9k_flush(struct ieee80211_hw *hw, bool drop)
timeout = 1;
for (j = 0; j< timeout; j++) {
- int npend = 0;
+ bool npend = false;
if (j)
usleep_range(1000, 2000);
@@ -2276,7 +2276,10 @@ static void ath9k_flush(struct ieee80211_hw *hw, bool drop)
if (!ATH_TXQ_SETUP(sc, i))
continue;
- npend += ath9k_has_pending_frames(sc,&sc->tx.txq[i]);
+ npend = ath9k_has_pending_frames(sc,&sc->tx.txq[i]);
+
+ if (npend)
+ break;
We need not bail out as soon as there is a pending frame in a queue.
There is a possibility that it could be transmitted successfully by
the time the given timeout expires.
Hi Vasanth,
the timeout is before we enter into the loop for checking pending
frames, so I thought it won't be affecting it. am I missing something?
please tell me.
I meant the total timeout (200ms). Even though there are frames in
tx queues after the given timeout for that particular queue, it is
quite possible that those frames can be completed successfully by
the time we are done with the waiting on the last queue.
Ok Vasanth.
thanks,
shafi
Vasanth
.
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html