[PATCH v2 00/11] staging: octeon: multi rx group (queue) support

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

 



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

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel



[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux