linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 4.3 1/2] mac80211: fix tx sequence number assignment with software queue + fast-xmit
@ 2015-09-24 12:59 Felix Fietkau
  2015-09-24 12:59 ` [PATCH 4.3 2/2] mac80211: fix handling of PS filtering with fast-xmit Felix Fietkau
  2015-09-24 14:31 ` [PATCH 4.3 1/2] mac80211: fix tx sequence number assignment with software queue + fast-xmit Johannes Berg
  0 siblings, 2 replies; 4+ messages in thread
From: Felix Fietkau @ 2015-09-24 12:59 UTC (permalink / raw)
  To: linux-wireless; +Cc: johannes

When using software queueing, tx sequence number assignment happens at
ieee80211_tx_dequeue time, so the fast-xmit codepath must not do that.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
---
 net/mac80211/tx.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
index 84e0e8c..af058eb 100644
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
@@ -2767,7 +2767,8 @@ static bool ieee80211_xmit_fast(struct ieee80211_sub_if_data *sdata,
 
 	if (hdr->frame_control & cpu_to_le16(IEEE80211_STYPE_QOS_DATA)) {
 		*ieee80211_get_qos_ctl(hdr) = tid;
-		hdr->seq_ctrl = ieee80211_tx_next_seq(sta, tid);
+		if (!sta->sta.txq[0])
+			hdr->seq_ctrl = ieee80211_tx_next_seq(sta, tid);
 	} else {
 		info->flags |= IEEE80211_TX_CTL_ASSIGN_SEQ;
 		hdr->seq_ctrl = cpu_to_le16(sdata->sequence_number);
-- 
2.2.2


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-09-24 14:31 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-24 12:59 [PATCH 4.3 1/2] mac80211: fix tx sequence number assignment with software queue + fast-xmit Felix Fietkau
2015-09-24 12:59 ` [PATCH 4.3 2/2] mac80211: fix handling of PS filtering with fast-xmit Felix Fietkau
2015-09-24 14:29   ` Johannes Berg
2015-09-24 14:31 ` [PATCH 4.3 1/2] mac80211: fix tx sequence number assignment with software queue + fast-xmit Johannes Berg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).