[source] Revert "ath9k: Add airtime fairness scheduler"

LEDE Commits lede-commits at lists.infradead.org
Mon Dec 19 05:08:12 PST 2016


nbd pushed a commit to source.git, branch master:
https://git.lede-project.org/a032940bfb71ed2d83f42a5dcf48973fb22f3b6a

commit a032940bfb71ed2d83f42a5dcf48973fb22f3b6a
Author: Felix Fietkau <nbd at nbd.name>
AuthorDate: Mon Dec 19 14:07:58 2016 +0100

    Revert "ath9k: Add airtime fairness scheduler"
    
    Accidentally pushed to the wrong branch
    
    This reverts commit 47bc081e76f6b04c0e9db687c8abb78eb437021f.
---
 ...duce-airtime-fairness-scheduling-between-.patch | 35 ------------
 ...n-ath_txq_lock-unlock-into-static-inlines.patch | 62 ----------------------
 .../mac80211/patches/530-ath9k_extra_leds.patch    |  6 +--
 .../patches/548-ath9k_enable_gpio_chip.patch       |  4 +-
 .../patches/549-ath9k_enable_gpio_buttons.patch    |  2 +-
 ...-ath9k-consistently-use-get_eeprom_rev-ah.patch |  2 +-
 6 files changed, 7 insertions(+), 104 deletions(-)

diff --git a/package/kernel/mac80211/patches/344-ath9k-Introduce-airtime-fairness-scheduling-between-.patch b/package/kernel/mac80211/patches/344-ath9k-Introduce-airtime-fairness-scheduling-between-.patch
deleted file mode 100644
index 57ce3d8..0000000
--- a/package/kernel/mac80211/patches/344-ath9k-Introduce-airtime-fairness-scheduling-between-.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From: =?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?= <toke at toke.dk>
-Date: Mon, 5 Dec 2016 13:27:37 +0200
-Subject: [PATCH] ath9k: Introduce airtime fairness scheduling between stations
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This reworks the ath9k driver to schedule transmissions to connected
-stations in a way that enforces airtime fairness between them. It
-accomplishes this by measuring the time spent transmitting to or
-receiving from a station at TX and RX completion, and accounting this to
-a per-station, per-QoS level airtime deficit. Then, an FQ-CoDel based
-deficit scheduler is employed at packet dequeue time, to control which
-station gets the next transmission opportunity.
-
-Airtime fairness can significantly improve the efficiency of the network
-when station rates vary. The following throughput values are from a
-simple three-station test scenario, where two stations operate at the
-highest HT20 rate, and one station at the lowest, and the scheduler is
-employed at the access point:
-
-                  Before   /   After
-Fast station 1:    19.17   /   25.09 Mbps
-Fast station 2:    19.83   /   25.21 Mbps
-Slow station:       2.58   /    1.77 Mbps
-Total:             41.58   /   52.07 Mbps
-
-The benefit of airtime fairness goes up the more stations are present.
-In a 30-station test with one station artificially limited to 1 Mbps,
-we have seen aggregate throughput go from 2.14 to 17.76 Mbps.
-
-Signed-off-by: Toke Høiland-Jørgensen <toke at toke.dk>
-Signed-off-by: Kalle Valo <kvalo at qca.qualcomm.com>
----
-
diff --git a/package/kernel/mac80211/patches/345-ath9k-Turn-ath_txq_lock-unlock-into-static-inlines.patch b/package/kernel/mac80211/patches/345-ath9k-Turn-ath_txq_lock-unlock-into-static-inlines.patch
deleted file mode 100644
index 7fe2c78..0000000
--- a/package/kernel/mac80211/patches/345-ath9k-Turn-ath_txq_lock-unlock-into-static-inlines.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From: =?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?= <toke at toke.dk>
-Date: Mon, 5 Dec 2016 13:27:38 +0200
-Subject: [PATCH] ath9k: Turn ath_txq_lock/unlock() into static inlines.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-These are one-line functions that just call spin_lock/unlock_bh(); turn
-them into static inlines to avoid the function call overhead.
-
-Signed-off-by: Toke Høiland-Jørgensen <toke at toke.dk>
-Signed-off-by: Kalle Valo <kvalo at qca.qualcomm.com>
----
-
---- a/drivers/net/wireless/ath/ath9k/ath9k.h
-+++ b/drivers/net/wireless/ath/ath9k/ath9k.h
-@@ -558,6 +558,15 @@ static inline void ath_chanctx_check_act
- 
- #endif /* CPTCFG_ATH9K_CHANNEL_CONTEXT */
- 
-+static inline void ath_txq_lock(struct ath_softc *sc, struct ath_txq *txq)
-+{
-+	spin_lock_bh(&txq->axq_lock);
-+}
-+static inline void ath_txq_unlock(struct ath_softc *sc, struct ath_txq *txq)
-+{
-+	spin_unlock_bh(&txq->axq_lock);
-+}
-+
- void ath_startrecv(struct ath_softc *sc);
- bool ath_stoprecv(struct ath_softc *sc);
- u32 ath_calcrxfilter(struct ath_softc *sc);
-@@ -565,8 +574,6 @@ int ath_rx_init(struct ath_softc *sc, in
- void ath_rx_cleanup(struct ath_softc *sc);
- int ath_rx_tasklet(struct ath_softc *sc, int flush, bool hp);
- struct ath_txq *ath_txq_setup(struct ath_softc *sc, int qtype, int subtype);
--void ath_txq_lock(struct ath_softc *sc, struct ath_txq *txq);
--void ath_txq_unlock(struct ath_softc *sc, struct ath_txq *txq);
- void ath_txq_unlock_complete(struct ath_softc *sc, struct ath_txq *txq);
- void ath_tx_cleanupq(struct ath_softc *sc, struct ath_txq *txq);
- bool ath_drain_all_txq(struct ath_softc *sc);
---- a/drivers/net/wireless/ath/ath9k/xmit.c
-+++ b/drivers/net/wireless/ath/ath9k/xmit.c
-@@ -98,18 +98,6 @@ static void ath_tx_status(struct ieee802
- 	dev_kfree_skb(skb);
- }
- 
--void ath_txq_lock(struct ath_softc *sc, struct ath_txq *txq)
--	__acquires(&txq->axq_lock)
--{
--	spin_lock_bh(&txq->axq_lock);
--}
--
--void ath_txq_unlock(struct ath_softc *sc, struct ath_txq *txq)
--	__releases(&txq->axq_lock)
--{
--	spin_unlock_bh(&txq->axq_lock);
--}
--
- void ath_txq_unlock_complete(struct ath_softc *sc, struct ath_txq *txq)
- 	__releases(&txq->axq_lock)
- {
diff --git a/package/kernel/mac80211/patches/530-ath9k_extra_leds.patch b/package/kernel/mac80211/patches/530-ath9k_extra_leds.patch
index 8ceed72..3fbe316 100644
--- a/package/kernel/mac80211/patches/530-ath9k_extra_leds.patch
+++ b/package/kernel/mac80211/patches/530-ath9k_extra_leds.patch
@@ -1,6 +1,6 @@
 --- a/drivers/net/wireless/ath/ath9k/ath9k.h
 +++ b/drivers/net/wireless/ath/ath9k/ath9k.h
-@@ -837,6 +837,9 @@ static inline int ath9k_dump_btcoex(stru
+@@ -827,6 +827,9 @@ static inline int ath9k_dump_btcoex(stru
  #ifdef CPTCFG_MAC80211_LEDS
  void ath_init_leds(struct ath_softc *sc);
  void ath_deinit_leds(struct ath_softc *sc);
@@ -10,7 +10,7 @@
  #else
  static inline void ath_init_leds(struct ath_softc *sc)
  {
-@@ -973,6 +976,13 @@ void ath_ant_comb_scan(struct ath_softc
+@@ -963,6 +966,13 @@ void ath_ant_comb_scan(struct ath_softc
  
  #define ATH9K_NUM_CHANCTX  2 /* supports 2 operating channels */
  
@@ -24,7 +24,7 @@
  struct ath_softc {
  	struct ieee80211_hw *hw;
  	struct device *dev;
-@@ -1025,9 +1035,8 @@ struct ath_softc {
+@@ -1015,9 +1025,8 @@ struct ath_softc {
  	spinlock_t chan_lock;
  
  #ifdef CPTCFG_MAC80211_LEDS
diff --git a/package/kernel/mac80211/patches/548-ath9k_enable_gpio_chip.patch b/package/kernel/mac80211/patches/548-ath9k_enable_gpio_chip.patch
index 67a5858..1330dfe 100644
--- a/package/kernel/mac80211/patches/548-ath9k_enable_gpio_chip.patch
+++ b/package/kernel/mac80211/patches/548-ath9k_enable_gpio_chip.patch
@@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  
  #include "common.h"
  #include "debug.h"
-@@ -983,6 +984,14 @@ struct ath_led {
+@@ -973,6 +974,14 @@ struct ath_led {
  	struct led_classdev cdev;
  };
  
@@ -33,7 +33,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
  struct ath_softc {
  	struct ieee80211_hw *hw;
  	struct device *dev;
-@@ -1037,6 +1046,9 @@ struct ath_softc {
+@@ -1027,6 +1036,9 @@ struct ath_softc {
  #ifdef CPTCFG_MAC80211_LEDS
  	const char *led_default_trigger;
  	struct list_head leds;
diff --git a/package/kernel/mac80211/patches/549-ath9k_enable_gpio_buttons.patch b/package/kernel/mac80211/patches/549-ath9k_enable_gpio_buttons.patch
index a914a15..f86b015 100644
--- a/package/kernel/mac80211/patches/549-ath9k_enable_gpio_buttons.patch
+++ b/package/kernel/mac80211/patches/549-ath9k_enable_gpio_buttons.patch
@@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau <nbd at nbd.name>
 ---
 --- a/drivers/net/wireless/ath/ath9k/ath9k.h
 +++ b/drivers/net/wireless/ath/ath9k/ath9k.h
-@@ -1048,6 +1048,7 @@ struct ath_softc {
+@@ -1038,6 +1038,7 @@ struct ath_softc {
  	struct list_head leds;
  #ifdef CONFIG_GPIOLIB
  	struct ath9k_gpio_chip *gpiochip;
diff --git a/package/kernel/mac80211/patches/554-ath9k-consistently-use-get_eeprom_rev-ah.patch b/package/kernel/mac80211/patches/554-ath9k-consistently-use-get_eeprom_rev-ah.patch
index 93f768b..64e7046 100644
--- a/package/kernel/mac80211/patches/554-ath9k-consistently-use-get_eeprom_rev-ah.patch
+++ b/package/kernel/mac80211/patches/554-ath9k-consistently-use-get_eeprom_rev-ah.patch
@@ -329,7 +329,7 @@ Signed-off-by: Martin Blumenstingl <martin.blumenstingl at googlemail.com>
  					       &ratesArray[0], cfgCtl,
 --- a/drivers/net/wireless/ath/ath9k/xmit.c
 +++ b/drivers/net/wireless/ath/ath9k/xmit.c
-@@ -1165,8 +1165,9 @@ static u8 ath_get_rate_txpower(struct at
+@@ -1177,8 +1177,9 @@ static u8 ath_get_rate_txpower(struct at
  		if (is_40) {
  			u8 power_ht40delta;
  			struct ar5416_eeprom_def *eep = &ah->eeprom.def;



More information about the lede-commits mailing list