alx: add multi queue support
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v2 Latest9 patches 1 replyIn review
- v19 patches 2 repliesSuperseded
Changes in v2 from the cover letter
- drop unneeded casts in alx_alloc_rx_ring (Patch 1)
- add additional information about testing and benefit to the changelog
Patches in v2 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/9 | alx: refactor descriptor allocationdrivers/ | +53 | 0 replies | |
| 2/9 | alx: extend data structures for multi queue supportdrivers/ | +31 | 0 replies | |
| 3/9 | alx: add ability to allocate and free alx_napi structuresdrivers/ | +78 | 0 replies | |
| 4/9 | alx: switch to per queue data structuresdrivers/ drivers/ | +93 | 0 replies | |
| 5/9 | alx: prepare interrupt functions for multiple queuesdrivers/ | +105 | 0 replies | |
| 6/9 | alx: prepare resource allocation for multi queue supportdrivers/ | +97 | 0 replies | |
| 7/9 | alx: prepare tx path for multi queue supportdrivers/ | +45 | 0 replies | |
| 8/9 | alx: enable msi-x interrupts by defaultdrivers/ | +1 | 0 replies | |
| 9/9 | alx: enable multiple tx queuesdrivers/ | +6 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.
Cover letter [PATCH net-next V2 0/9] alx: add multi queue support
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(-)
Signature · 1 line
2.7.4