aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mac80211/patches/331-ath9k-fix-more-data-flag-for-buffered-multicast-pack.patch
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@nbd.name>2017-10-07 12:52:56 +0200
committerFelix Fietkau <nbd@nbd.name>2017-10-13 11:45:57 +0200
commit609208597b6d18b0c1730f34685db73c859aa492 (patch)
treee18dd39c7c691c8cacedd589a33fcd7a034dab03 /package/kernel/mac80211/patches/331-ath9k-fix-more-data-flag-for-buffered-multicast-pack.patch
parentefbd4e721d0bc6aa99614ef9d893f9cfe2264907 (diff)
downloadupstream-609208597b6d18b0c1730f34685db73c859aa492.tar.gz
upstream-609208597b6d18b0c1730f34685db73c859aa492.tar.bz2
upstream-609208597b6d18b0c1730f34685db73c859aa492.zip
mac80211: update to wireless-testing 2017-10-06
Rework the code to get rid of some extra kernel module dependencies introduced in the last update. Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'package/kernel/mac80211/patches/331-ath9k-fix-more-data-flag-for-buffered-multicast-pack.patch')
-rw-r--r--package/kernel/mac80211/patches/331-ath9k-fix-more-data-flag-for-buffered-multicast-pack.patch40
1 files changed, 0 insertions, 40 deletions
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
deleted file mode 100644
index 1e0761eb15..0000000000
--- a/package/kernel/mac80211/patches/331-ath9k-fix-more-data-flag-for-buffered-multicast-pack.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From: Felix Fietkau <nbd@nbd.name>
-Date: Sun, 23 Jul 2017 14:58:22 +0200
-Subject: [PATCH] ath9k: fix more-data flag for buffered multicast packets
-
-The flag needs to be cleared for the last packet in the list, not the
-first one. Fixes some issues with multicast packet loss for powersave
-clients connected to an ath9k AP.
-
-Signed-off-by: Felix Fietkau <nbd@nbd.name>
----
-
---- a/drivers/net/wireless/ath/ath9k/xmit.c
-+++ b/drivers/net/wireless/ath/ath9k/xmit.c
-@@ -2451,7 +2451,6 @@ void ath_tx_cabq(struct ieee80211_hw *hw
- .txq = sc->beacon.cabq
- };
- struct ath_tx_info info = {};
-- struct ieee80211_hdr *hdr;
- struct ath_buf *bf_tail = NULL;
- struct ath_buf *bf;
- LIST_HEAD(bf_q);
-@@ -2495,15 +2494,10 @@ void ath_tx_cabq(struct ieee80211_hw *hw
- if (list_empty(&bf_q))
- return;
-
-- bf = list_first_entry(&bf_q, struct ath_buf, list);
-- hdr = (struct ieee80211_hdr *) bf->bf_mpdu->data;
--
-- if (hdr->frame_control & cpu_to_le16(IEEE80211_FCTL_MOREDATA)) {
-- hdr->frame_control &= ~cpu_to_le16(IEEE80211_FCTL_MOREDATA);
-- dma_sync_single_for_device(sc->dev, bf->bf_buf_addr,
-- sizeof(*hdr), DMA_TO_DEVICE);
-- }
-+ 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);