[PATCH 0/9] staging: octeon: multi rx group (queue) support

From: Aaro Koskinen
Date: Tue Aug 30 2016 - 14:48:18 EST


Hi,

This series implements multiple RX group support that should improve
the networking performance on multi-core OCTEONs. Basically we register
IRQ and NAPI for each group, and ask the HW to select the group for
the incoming packets based on hash.

Tested on EdgeRouter Lite with a simple forwarding test using two flows
and 16 RX groups distributed between two cores - the routing throughput
is roughly doubled.

A.

Aaro Koskinen (9):
staging: octeon: disable rx interrupts in oct_rx_shutdown
staging: octeon: use passed interrupt number in the handler
staging: octeon: pass the NAPI instance reference to irq handler
staging: octeon: move common poll code into a separate function
staging: octeon: create a struct for rx group specific data
staging: octeon: move irq into rx group specific data
staging: octeon: move group number into rx group data
staging: octeon: support enabling multiple rx groups
staging: octeon: enable taking multiple rx groups into use

drivers/staging/octeon/ethernet-rx.c | 178 ++++++++++++++++++++-----------
drivers/staging/octeon/ethernet.c | 55 ++++++++--
drivers/staging/octeon/octeon-ethernet.h | 2 +-
3 files changed, 159 insertions(+), 76 deletions(-)

--
2.9.2