From: Tobias Regnery <tobias.regnery@gmail.com>
To: netdev@vger.kernel.org, jcliburn@gmail.com, chris.snook@gmail.com
Cc: davem@davemloft.net, Tobias Regnery <tobias.regnery@gmail.com>
Subject: [PATCH net-next V2 0/9] alx: add multi queue support
Date: Tue, 15 Nov 2016 12:43:07 +0100 [thread overview]
Message-ID: <cover.1479208627.git.tobias.regnery@gmail.com> (raw)
This patchset lays the groundwork for multi queue support in the alx driver
and enables multi queue support for the tx path by default. The hardware
supports up to 4 tx queues.
Benefits are better utilization of multi core cpus and the usage of the
msi-x support by default which splits the handling of rx / tx and misc
other interrupts.
The rx path is a little bit harder because apparently (based on the limited
information from the downstream driver) the hardware supports up to 8 rss
queues but only has one hardware descriptor ring on the rx side. So the rx
path will be part of another patchset.
Tested on my AR8161 ethernet adapter with different tests:
- there are no regressions observed during my daily usage
- iperf tcp and udp tests shows no performance regressions
- netperf TCP_RR and UDP_RR shows a slight performance increase of about
1-2% with this patchset applied
This work is based on the downstream driver at github.com/qca/alx
Changes in V2:
- drop unneeded casts in alx_alloc_rx_ring (Patch 1)
- add additional information about testing and benefit to the
changelog
Tobias Regnery (9):
alx: refactor descriptor allocation
alx: extend data structures for multi queue support
alx: add ability to allocate and free alx_napi structures
alx: switch to per queue data structures
alx: prepare interrupt functions for multiple queues
alx: prepare resource allocation for multi queue support
alx: prepare tx path for multi queue support
alx: enable msi-x interrupts by default
alx: enable multiple tx queues
drivers/net/ethernet/atheros/alx/alx.h | 36 ++-
drivers/net/ethernet/atheros/alx/main.c | 554 ++++++++++++++++++++++----------
2 files changed, 420 insertions(+), 170 deletions(-)
--
2.7.4
next reply other threads:[~2016-11-15 11:43 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-15 11:43 Tobias Regnery [this message]
2016-11-15 11:43 ` [PATCH net-next V2 1/9] alx: refactor descriptor allocation Tobias Regnery
2016-11-15 11:43 ` [PATCH net-next V2 2/9] alx: extend data structures for multi queue support Tobias Regnery
2016-11-15 11:43 ` [PATCH net-next V2 3/9] alx: add ability to allocate and free alx_napi structures Tobias Regnery
2016-11-15 11:43 ` [PATCH net-next V2 4/9] alx: switch to per queue data structures Tobias Regnery
2016-11-15 11:43 ` [PATCH net-next V2 5/9] alx: prepare interrupt functions for multiple queues Tobias Regnery
2016-11-15 11:43 ` [PATCH net-next V2 6/9] alx: prepare resource allocation for multi queue support Tobias Regnery
2016-11-15 11:43 ` [PATCH net-next V2 7/9] alx: prepare tx path " Tobias Regnery
2016-11-15 11:43 ` [PATCH net-next V2 8/9] alx: enable msi-x interrupts by default Tobias Regnery
2016-11-15 11:43 ` [PATCH net-next V2 9/9] alx: enable multiple tx queues Tobias Regnery
2016-11-16 3:46 ` [PATCH net-next V2 0/9] alx: add multi queue support David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1479208627.git.tobias.regnery@gmail.com \
--to=tobias.regnery@gmail.com \
--cc=chris.snook@gmail.com \
--cc=davem@davemloft.net \
--cc=jcliburn@gmail.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.