[PATCH 0/2] GRE: segmentation offload
From: Pravin B Shelar <hidden>
Date: 2013-01-24 22:15:30
Following patch adds segmentation offload to GRE. I did performance tests with netperf single TCP_STREAM tests, results are as follows for GRE TAP device on 10G. base kernel: 4043 10^6bits/sec with patch: 4801 10^6bits/sec (+18.7) This patch also address concerns that were raised in GRE csum discussion (http://patchwork.ozlabs.org/patch/214665/). It avoids large skb allocation in xmit path and improves performance as shown. Pravin B Shelar (2): net: Add skb_unclone() helper function. GRE: Add segmentation offload for GRE drivers/net/ppp/ppp_generic.c | 3 +- include/linux/netdevice.h | 4 +- include/linux/skbuff.h | 20 ++++++ net/core/dev.c | 59 ++++++++++------- net/core/skbuff.c | 7 +- net/ipv4/af_inet.c | 1 + net/ipv4/ah4.c | 3 +- net/ipv4/gre.c | 110 +++++++++++++++++++++++++++++++ net/ipv4/ip_fragment.c | 2 +- net/ipv4/ip_gre.c | 94 +++++++++++++++++++++----- net/ipv4/tcp.c | 1 + net/ipv4/tcp_output.c | 2 +- net/ipv4/udp.c | 3 +- net/ipv4/xfrm4_input.c | 2 +- net/ipv4/xfrm4_mode_tunnel.c | 3 +- net/ipv6/ah6.c | 3 +- net/ipv6/ip6_offload.c | 1 + net/ipv6/netfilter/nf_conntrack_reasm.c | 2 +- net/ipv6/reassembly.c | 2 +- net/ipv6/udp_offload.c | 3 +- net/ipv6/xfrm6_mode_tunnel.c | 3 +- net/sched/act_ipt.c | 6 +- net/sched/act_pedit.c | 3 +- 23 files changed, 271 insertions(+), 66 deletions(-) -- 1.7.10