mac80211: Fix duplicate frames on cooked monitor
authorHelmut Schaa <helmut.schaa@googlemail.com>
Fri, 1 Apr 2011 13:46:05 +0000 (15:46 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 4 Apr 2011 19:22:11 +0000 (15:22 -0400)
Cleaning the ieee80211_rx_data.flags field here is wrong, instead the
flags should be valid accross processing the frame on different
interfaces. Fix this by removing the incorrect flags=0 assignment.

Introduced in commit 554891e63a29af35cc6bb403ef34e319518114d0
(mac80211: move packet flags into packet).

Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/rx.c

index aa5cc37b49216087e1aa4d54819f88fdcfbbee52..2afeac9c645322cbb21e87183bd16ccb4fa2026e 100644 (file)
@@ -2541,7 +2541,6 @@ static void ieee80211_rx_handlers(struct ieee80211_rx_data *rx)
                 * same TID from the same station
                 */
                rx->skb = skb;
-               rx->flags = 0;
 
                CALL_RXH(ieee80211_rx_h_decrypt)
                CALL_RXH(ieee80211_rx_h_check_more_data)
@@ -2612,6 +2611,7 @@ void ieee80211_release_reorder_timeout(struct sta_info *sta, int tid)
                .sdata = sta->sdata,
                .local = sta->local,
                .queue = tid,
+               .flags = 0,
        };
        struct tid_ampdu_rx *tid_agg_rx;