diff options
author | Tom Herbert <therbert@google.com> | 2014-09-20 14:52:30 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-09-26 00:22:47 -0400 |
commit | 53e50398968d43338c4d932114e68bc099fc5fbd (patch) | |
tree | f51fe647dc1d833dedd68f7ed384d0634bc6c143 /net/ipv4/gre_offload.c | |
parent | f71470b37e79d6eb151debd47364d920b7babd30 (diff) | |
download | op-kernel-dev-53e50398968d43338c4d932114e68bc099fc5fbd.zip op-kernel-dev-53e50398968d43338c4d932114e68bc099fc5fbd.tar.gz |
net: Remove gso_send_check as an offload callback
The send_check logic was only interesting in cases of TCP offload and
UDP UFO where the checksum needed to be initialized to the pseudo
header checksum. Now we've moved that logic into the related
gso_segment functions so gso_send_check is no longer needed.
Signed-off-by: Tom Herbert <therbert@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/gre_offload.c')
-rw-r--r-- | net/ipv4/gre_offload.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/net/ipv4/gre_offload.c b/net/ipv4/gre_offload.c index d3fe2ac..a777295 100644 --- a/net/ipv4/gre_offload.c +++ b/net/ipv4/gre_offload.c @@ -15,13 +15,6 @@ #include <net/protocol.h> #include <net/gre.h> -static int gre_gso_send_check(struct sk_buff *skb) -{ - if (!skb->encapsulation) - return -EINVAL; - return 0; -} - static struct sk_buff *gre_gso_segment(struct sk_buff *skb, netdev_features_t features) { @@ -46,6 +39,9 @@ static struct sk_buff *gre_gso_segment(struct sk_buff *skb, SKB_GSO_IPIP))) goto out; + if (!skb->encapsulation) + goto out; + if (unlikely(!pskb_may_pull(skb, sizeof(*greh)))) goto out; @@ -256,7 +252,6 @@ static int gre_gro_complete(struct sk_buff *skb, int nhoff) static const struct net_offload gre_offload = { .callbacks = { - .gso_send_check = gre_gso_send_check, .gso_segment = gre_gso_segment, .gro_receive = gre_gro_receive, .gro_complete = gre_gro_complete, |