[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20160831205746.23786-1-aaro.koskinen@iki.fi>
Date: Wed, 31 Aug 2016 23:57:35 +0300
From: Aaro Koskinen <aaro.koskinen@....fi>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
David Daney <ddaney@...iumnetworks.com>,
Ed Swierk <eswierk@...portsystems.com>,
devel@...verdev.osuosl.org
Cc: linux-kernel@...r.kernel.org, Aaro Koskinen <aaro.koskinen@....fi>
Subject: [PATCH v2 00/11] staging: octeon: multi rx group (queue) support
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.
Also tested with EBH5600 (8 cores) and EBB6800 (16 cores) by sending
and receiving traffic in both directions using SGMII interfaces.
A.
v2:
- Fix build failure with CONFIG_NET_POLL_CONSOLE.
- Disable the extended group tag mask bits on CN68XX.
- Set up PKND for all interfaces.
- Don't allow poll before RX init is completed.
v1:
http://marc.info/?t=147258299700005&r=1&w=2
Aaro Koskinen (11):
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
staging: octeon: set up pknd for all interfaces
staging: octeon: prevent poll during rx init
drivers/staging/octeon/ethernet-rx.c | 184 ++++++++++++++++++++-----------
drivers/staging/octeon/ethernet.c | 64 +++++++++--
drivers/staging/octeon/octeon-ethernet.h | 2 +-
3 files changed, 174 insertions(+), 76 deletions(-)
--
2.9.2
Powered by blists - more mailing lists