summaryrefslogtreecommitdiff
path: root/net/mac80211
diff options
context:
space:
mode:
authorChristian Lamparter <chunkeey@googlemail.com>2010-09-21 21:36:18 +0200
committerAndi Kleen <ak@linux.intel.com>2010-12-14 23:40:01 +0100
commitafa9194b3aee8846357236026905fb221c1d4564 (patch)
tree8e4c4923ace0f0c9829eacba2e7440fe67b2dd56 /net/mac80211
parent0fe79ffa47b60778e71fc8b2dcfc30eb9681db30 (diff)
mac80211: clear txflags for ps-filtered frames
commit eb7d3066cf864342e8ae6a5c1126a1602c4d06c0 upstream. This patch fixes stale mac80211_tx_control_flags for filtered / retried frames. Because ieee80211_handle_filtered_frame feeds skbs back into the tx path, they have to be stripped of some tx flags so they won't confuse the stack, driver or device. Acked-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: Christian Lamparter <chunkeey@googlemail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Andi Kleen <ak@linux.intel.com>
Diffstat (limited to 'net/mac80211')
-rw-r--r--net/mac80211/status.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/mac80211/status.c b/net/mac80211/status.c
index 94613af009f3..5f1310ad7535 100644
--- a/net/mac80211/status.c
+++ b/net/mac80211/status.c
@@ -58,6 +58,7 @@ static void ieee80211_handle_filtered_frame(struct ieee80211_local *local,
info->control.vif = &sta->sdata->vif;
info->flags |= IEEE80211_TX_INTFL_NEED_TXPROCESSING |
IEEE80211_TX_INTFL_RETRANSMISSION;
+ info->flags &= ~IEEE80211_TX_TEMPORARY_FLAGS;
sta->tx_filtered_count++;