summaryrefslogtreecommitdiff
path: root/package/kernel/mac80211/patches/020-11-rt2x00-separte-clearing-entry-from-rt2x00lib_txdone.patch
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2017-08-22 23:59:48 +0200
committerHauke Mehrtens <hauke@hauke-m.de>2017-10-01 12:49:11 +0200
commita8f63a0717f553e0a1b37ee9212fc4cb2a801426 (patch)
tree9016b975706f35b98075167f2cf6b15add308c9b /package/kernel/mac80211/patches/020-11-rt2x00-separte-clearing-entry-from-rt2x00lib_txdone.patch
parent1114f5dc10755e3c92b5711b420818cf9e366874 (diff)
downloadmtk-20170518-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.zip
mtk-20170518-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.tar.gz
mtk-20170518-a8f63a0717f553e0a1b37ee9212fc4cb2a801426.tar.bz2
mac80211: update to backports-4.14-rc2
This updates mac80211 to backprots-4.14-rc2. This was compile and runtime tested with ath9k, ath10k and b43 with multiple stations and ieee80211w and in different scenarios by many other people. To create the backports-4.14-rc2-1.tar.xz use this repository: https://git.kernel.org/pub/scm/linux/kernel/git/backports/backports.git from tag v4.14-rc2-1 Then run this: ./gentree.py --git-revision v4.14-rc2 --clean <path to linux repo> ../backports-4.14-rc2-1 This also adapts the ath10k-ct and mt76 driver to the changed cfg80211 APIs and syncs the nl80211.h file in iw with the new version from backports-4.14-rc2. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'package/kernel/mac80211/patches/020-11-rt2x00-separte-clearing-entry-from-rt2x00lib_txdone.patch')
-rw-r--r--package/kernel/mac80211/patches/020-11-rt2x00-separte-clearing-entry-from-rt2x00lib_txdone.patch83
1 files changed, 0 insertions, 83 deletions
diff --git a/package/kernel/mac80211/patches/020-11-rt2x00-separte-clearing-entry-from-rt2x00lib_txdone.patch b/package/kernel/mac80211/patches/020-11-rt2x00-separte-clearing-entry-from-rt2x00lib_txdone.patch
deleted file mode 100644
index e135939..0000000
--- a/package/kernel/mac80211/patches/020-11-rt2x00-separte-clearing-entry-from-rt2x00lib_txdone.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From 56646adf9cd60b488ddc5633a2d9aa1f30efa5db Mon Sep 17 00:00:00 2001
-From: Stanislaw Gruszka <sgruszka@redhat.com>
-Date: Wed, 15 Feb 2017 10:25:07 +0100
-Subject: [PATCH 11/19] rt2x00: separte clearing entry from rt2x00lib_txdone
-
-This makes rt2x00lib_txdone a bit simpler and will allow to reuse
-code in different variant of txdone which I'm preparing.
-
-Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
-Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
----
- drivers/net/wireless/ralink/rt2x00/rt2x00dev.c | 51 +++++++++++++++-----------
- 1 file changed, 29 insertions(+), 22 deletions(-)
-
---- a/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c
-+++ b/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c
-@@ -391,6 +391,32 @@ static void rt2x00lib_fill_tx_status(str
- }
- }
-
-+static void rt2x00lib_clear_entry(struct rt2x00_dev *rt2x00dev,
-+ struct queue_entry *entry)
-+{
-+ /*
-+ * Make this entry available for reuse.
-+ */
-+ entry->skb = NULL;
-+ entry->flags = 0;
-+
-+ rt2x00dev->ops->lib->clear_entry(entry);
-+
-+ rt2x00queue_index_inc(entry, Q_INDEX_DONE);
-+
-+ /*
-+ * If the data queue was below the threshold before the txdone
-+ * handler we must make sure the packet queue in the mac80211 stack
-+ * is reenabled when the txdone handler has finished. This has to be
-+ * serialized with rt2x00mac_tx(), otherwise we can wake up queue
-+ * before it was stopped.
-+ */
-+ spin_lock_bh(&entry->queue->tx_lock);
-+ if (!rt2x00queue_threshold(entry->queue))
-+ rt2x00queue_unpause_queue(entry->queue);
-+ spin_unlock_bh(&entry->queue->tx_lock);
-+}
-+
- void rt2x00lib_txdone(struct queue_entry *entry,
- struct txdone_entry_desc *txdesc)
- {
-@@ -471,30 +497,11 @@ void rt2x00lib_txdone(struct queue_entry
- ieee80211_tx_status(rt2x00dev->hw, entry->skb);
- else
- ieee80211_tx_status_ni(rt2x00dev->hw, entry->skb);
-- } else
-+ } else {
- dev_kfree_skb_any(entry->skb);
-+ }
-
-- /*
-- * Make this entry available for reuse.
-- */
-- entry->skb = NULL;
-- entry->flags = 0;
--
-- rt2x00dev->ops->lib->clear_entry(entry);
--
-- rt2x00queue_index_inc(entry, Q_INDEX_DONE);
--
-- /*
-- * If the data queue was below the threshold before the txdone
-- * handler we must make sure the packet queue in the mac80211 stack
-- * is reenabled when the txdone handler has finished. This has to be
-- * serialized with rt2x00mac_tx(), otherwise we can wake up queue
-- * before it was stopped.
-- */
-- spin_lock_bh(&entry->queue->tx_lock);
-- if (!rt2x00queue_threshold(entry->queue))
-- rt2x00queue_unpause_queue(entry->queue);
-- spin_unlock_bh(&entry->queue->tx_lock);
-+ rt2x00lib_clear_entry(rt2x00dev, entry);
- }
- EXPORT_SYMBOL_GPL(rt2x00lib_txdone);
-