1 From 07ae2dfcf4f7143ce191c6436da1c33f179af0d6 Mon Sep 17 00:00:00 2001
2 From: Eliad Peller <eliad@wizery.com>
3 Date: Wed, 1 Feb 2012 18:48:09 +0200
4 Subject: mac80211: timeout a single frame in the rx reorder buffer
6 From: Eliad Peller <eliad@wizery.com>
8 commit 07ae2dfcf4f7143ce191c6436da1c33f179af0d6 upstream.
10 The current code checks for stored_mpdu_num > 1, causing
11 the reorder_timer to be triggered indefinitely, but the
12 frame is never timed-out (until the next packet is received)
14 Signed-off-by: Eliad Peller <eliad@wizery.com>
15 Acked-by: Johannes Berg <johannes@sipsolutions.net>
16 Signed-off-by: John W. Linville <linville@tuxdriver.com>
17 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
20 net/mac80211/rx.c | 2 +-
21 1 file changed, 1 insertion(+), 1 deletion(-)
23 --- a/net/mac80211/rx.c
24 +++ b/net/mac80211/rx.c
25 @@ -610,7 +610,7 @@ static void ieee80211_sta_reorder_releas
26 index = seq_sub(tid_agg_rx->head_seq_num, tid_agg_rx->ssn) %
28 if (!tid_agg_rx->reorder_buf[index] &&
29 - tid_agg_rx->stored_mpdu_num > 1) {
30 + tid_agg_rx->stored_mpdu_num) {
32 * No buffers ready to be released, but check whether any
33 * frames in the reorder buffer have timed out.