From ea72f22bdfa0711228a2c2f5289697c6e1ea0ea9 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Tue, 25 Jul 2017 19:47:48 +0200 Subject: [PATCH] ath9k: fix regression in multicast buffering fix Update the more data flag on the last frame, but tx from the first frame on. Signed-off-by: Felix Fietkau --- ...ath9k-fix-more-data-flag-for-buffered-multicast-pack.patch | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/package/kernel/mac80211/patches/331-ath9k-fix-more-data-flag-for-buffered-multicast-pack.patch b/package/kernel/mac80211/patches/331-ath9k-fix-more-data-flag-for-buffered-multicast-pack.patch index d09c82cb97..1e0761eb15 100644 --- a/package/kernel/mac80211/patches/331-ath9k-fix-more-data-flag-for-buffered-multicast-pack.patch +++ b/package/kernel/mac80211/patches/331-ath9k-fix-more-data-flag-for-buffered-multicast-pack.patch @@ -19,7 +19,7 @@ Signed-off-by: Felix Fietkau struct ath_buf *bf_tail = NULL; struct ath_buf *bf; LIST_HEAD(bf_q); -@@ -2495,14 +2494,8 @@ void ath_tx_cabq(struct ieee80211_hw *hw +@@ -2495,15 +2494,10 @@ void ath_tx_cabq(struct ieee80211_hw *hw if (list_empty(&bf_q)) return; @@ -34,5 +34,7 @@ Signed-off-by: Felix Fietkau + bf = list_last_entry(&bf_q, struct ath_buf, list); + ath9k_set_moredata(sc, bf, false); ++ bf = list_first_entry(&bf_q, struct ath_buf, list); ath_txq_lock(sc, txctl.txq); ath_tx_fill_desc(sc, bf, txctl.txq, 0); + ath_tx_txqaddbuf(sc, txctl.txq, &bf_q, false);