Skip to contentSkip to conversation

sunvnet: add jumbo frames support

PATCH Superseded David L Stevens 1 participant 1 message Sep 29, 2014

Subsystems (2)

v7 of 9 Superseded Latest is v9 →

lore
Share & tools
lore
#0 lore raw

v7 cover sunvnet: add jumbo frames support

This patch set updates the sunvnet driver to version 1.6 of the VIO protocol to support per-port exchange of MTU information and allow non-standard MTU sizes, including jumbo frames.

Using large MTUs shows a nearly 5X throughput improvement Linux-Solaris and > 10X throughput improvement Linux-Linux.

Changes from v6:
-made kernel transmit path zero-copy to remove memory n^2 scaling issue
raised by Raghuram Kothakota <[email protected]>
Changes from v5:
- fixed comment per Sowmini Varadhan <[email protected]>
Changes from v4:
- changed VNET_MAXPACKET per David Laight <[email protected]>
- added cookies to support non-contiguous buffers of max size
Changes from v3:
- added version functions per Dave Miller <[email protected]>
- moved rmtu to vnet_port per Dave Miller <[email protected]>
- explicitly set options bits and capability flags to 0 per Raghuram Kothakota <[email protected]>
Changes from v2:
- make checkpatch clean
Changes from v1:
- fix brace formatting per Dave Miller <[email protected]>

David L Stevens (4):
sunvnet: upgrade to VIO protocol version 1.6
sunvnet: make transmit path zero-copy in the kernel
sunvnet: allow admin to set sunvnet MTU
sunvnet: generate ICMP PTMUD messages for smaller port MTUs

 arch/sparc/include/asm/vio.h       |   44 +++++-
 arch/sparc/kernel/ldc.c            |    2 +-
 arch/sparc/kernel/viohs.c          |   14 ++-
 drivers/net/ethernet/sun/sunvnet.c |  313 +++++++++++++++++++++++++++++-------
 drivers/net/ethernet/sun/sunvnet.h |    9 +-
 5 files changed, 315 insertions(+), 67 deletions(-)