Search Linux Wireless

[PATCHv3 0/5] mac80211: implement fq_codel

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

This patchset disables qdiscs for drivers
using software queuing and performs fq_codel-like
dequeuing on txqs.

I've reworked it as per Avery's suggestion (and
more).

I've (re)tested it against ath10k with and without
DQL (my ath10k RFC which is limited but sufficient
for some proofing scenarios) and got quite nice
looking results:

  http://imgur.com/a/8ruhK
  http://kazikcz.github.io/dl/2016-04-12-flent-fqmac-ath10k-dql.tar.gz

All DQL cases show incremental improvement and are
within expectations. The "dql-fq" case loses TCP
fairness/convergence (compared to "dql-taildrop")
because it removes per-txq 64 packet limit and
"dql-fqcodel" gets it back.


v3:
 * split taildrop, fq and codel functionalities
   into separate patches [Avery]

v2:
 * fix invalid ptr deref
 * fix compilation for backports


Michal Kazior (5):
  mac80211: skip netdev queue control with software queuing
  mac80211: implement fair queueing per txq
  mac80211: add debug knobs for fair queuing
  mac80211: implement codel on fair queuing flows
  mac80211: add debug knobs for codel

 include/net/mac80211.h        |  17 ++-
 net/mac80211/agg-tx.c         |   8 +-
 net/mac80211/codel.h          | 265 ++++++++++++++++++++++++++++++++++++++++
 net/mac80211/codel_i.h        | 100 +++++++++++++++
 net/mac80211/debugfs.c        |  91 ++++++++++++++
 net/mac80211/debugfs_netdev.c |  28 ++++-
 net/mac80211/debugfs_sta.c    |  45 +++++++
 net/mac80211/fq.h             | 276 ++++++++++++++++++++++++++++++++++++++++++
 net/mac80211/fq_i.h           |  82 +++++++++++++
 net/mac80211/ieee80211_i.h    |  32 ++++-
 net/mac80211/iface.c          |  26 ++--
 net/mac80211/main.c           |  10 +-
 net/mac80211/rx.c             |   2 +-
 net/mac80211/sta_info.c       |  14 +--
 net/mac80211/tx.c             | 274 ++++++++++++++++++++++++++++++++++-------
 net/mac80211/util.c           |  34 ++----
 16 files changed, 1204 insertions(+), 100 deletions(-)
 create mode 100644 net/mac80211/codel.h
 create mode 100644 net/mac80211/codel_i.h
 create mode 100644 net/mac80211/fq.h
 create mode 100644 net/mac80211/fq_i.h

-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux