diff options
author | Eliad Peller <eliad@wizery.com> | 2012-02-01 11:48:09 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-02-01 15:26:00 -0500 |
commit | 07ae2dfcf4f7143ce191c6436da1c33f179af0d6 (patch) | |
tree | c18ff3f0f4967bee6bf741bcbc703809d73252c9 /net/mac80211 | |
parent | 3d29dd9b5b160ba4542a9b8f869a220559e633a0 (diff) |
mac80211: timeout a single frame in the rx reorder buffer
The current code checks for stored_mpdu_num > 1, causing
the reorder_timer to be triggered indefinitely, but the
frame is never timed-out (until the next packet is received)
Signed-off-by: Eliad Peller <eliad@wizery.com>
Cc: <stable@vger.kernel.org>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211')
-rw-r--r-- | net/mac80211/rx.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c index 751409120769..5a5e504a8ffb 100644 --- a/net/mac80211/rx.c +++ b/net/mac80211/rx.c | |||
@@ -611,7 +611,7 @@ static void ieee80211_sta_reorder_release(struct ieee80211_hw *hw, | |||
611 | index = seq_sub(tid_agg_rx->head_seq_num, tid_agg_rx->ssn) % | 611 | index = seq_sub(tid_agg_rx->head_seq_num, tid_agg_rx->ssn) % |
612 | tid_agg_rx->buf_size; | 612 | tid_agg_rx->buf_size; |
613 | if (!tid_agg_rx->reorder_buf[index] && | 613 | if (!tid_agg_rx->reorder_buf[index] && |
614 | tid_agg_rx->stored_mpdu_num > 1) { | 614 | tid_agg_rx->stored_mpdu_num) { |
615 | /* | 615 | /* |
616 | * No buffers ready to be released, but check whether any | 616 | * No buffers ready to be released, but check whether any |
617 | * frames in the reorder buffer have timed out. | 617 | * frames in the reorder buffer have timed out. |