* [PATCH net-next 1/2] ip_gre: allow CSUM capable devices to handle packets
@ 2013-02-18 13:39 Dmitry Kravkov
2013-02-18 13:39 ` [PATCH net-next 2/2] ip_gre: propogate target device GSO capability to the tunnel device Dmitry Kravkov
0 siblings, 1 reply; 3+ messages in thread
From: Dmitry Kravkov @ 2013-02-18 13:39 UTC (permalink / raw)
To: davem, netdev; +Cc: Dmitry Kravkov
If device is not able to handle checksumming it will
be handled in dev_xmit
Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
---
net/ipv4/ip_gre.c | 7 ++-----
1 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c
index a56f118..cdc31ac 100644
--- a/net/ipv4/ip_gre.c
+++ b/net/ipv4/ip_gre.c
@@ -745,12 +745,9 @@ static struct sk_buff *handle_offloads(struct sk_buff *skb)
goto error;
skb_shinfo(skb)->gso_type |= SKB_GSO_GRE;
return skb;
- } else if (skb->ip_summed == CHECKSUM_PARTIAL) {
- err = skb_checksum_help(skb);
- if (unlikely(err))
- goto error;
}
- skb->ip_summed = CHECKSUM_NONE;
+ if (skb->ip_summed != CHECKSUM_PARTIAL)
+ skb->ip_summed = CHECKSUM_NONE;
return skb;
--
1.7.7.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH net-next 2/2] ip_gre: propogate target device GSO capability to the tunnel device
2013-02-18 13:39 [PATCH net-next 1/2] ip_gre: allow CSUM capable devices to handle packets Dmitry Kravkov
@ 2013-02-18 13:39 ` Dmitry Kravkov
0 siblings, 0 replies; 3+ messages in thread
From: Dmitry Kravkov @ 2013-02-18 13:39 UTC (permalink / raw)
To: davem, netdev; +Cc: Dmitry Kravkov
Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
---
net/ipv4/ip_gre.c | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c
index cdc31ac..31bc941 100644
--- a/net/ipv4/ip_gre.c
+++ b/net/ipv4/ip_gre.c
@@ -1103,8 +1103,14 @@ static int ipgre_tunnel_bind_dev(struct net_device *dev)
tunnel->hlen = addend;
/* TCP offload with GRE SEQ is not supported. */
if (!(tunnel->parms.o_flags & GRE_SEQ)) {
- dev->features |= NETIF_F_GSO_SOFTWARE;
- dev->hw_features |= NETIF_F_GSO_SOFTWARE;
+ /* device supports enc gso offload*/
+ if (tdev->hw_enc_features & NETIF_F_GRE_GSO) {
+ dev->features |= NETIF_F_TSO;
+ dev->hw_features |= NETIF_F_TSO;
+ } else {
+ dev->features |= NETIF_F_GSO_SOFTWARE;
+ dev->hw_features |= NETIF_F_GSO_SOFTWARE;
+ }
}
return mtu;
--
1.7.7.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH net-next 2/2] ip_gre: propogate target device GSO capability to the tunnel device
[not found] <1361193320-11181-1-git-send-email-y>
@ 2013-02-18 13:15 ` y
0 siblings, 0 replies; 3+ messages in thread
From: y @ 2013-02-18 13:15 UTC (permalink / raw)
To: davem, netdev; +Cc: Dmitry Kravkov
From: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
---
net/ipv4/ip_gre.c | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c
index cdc31ac..31bc941 100644
--- a/net/ipv4/ip_gre.c
+++ b/net/ipv4/ip_gre.c
@@ -1103,8 +1103,14 @@ static int ipgre_tunnel_bind_dev(struct net_device *dev)
tunnel->hlen = addend;
/* TCP offload with GRE SEQ is not supported. */
if (!(tunnel->parms.o_flags & GRE_SEQ)) {
- dev->features |= NETIF_F_GSO_SOFTWARE;
- dev->hw_features |= NETIF_F_GSO_SOFTWARE;
+ /* device supports enc gso offload*/
+ if (tdev->hw_enc_features & NETIF_F_GRE_GSO) {
+ dev->features |= NETIF_F_TSO;
+ dev->hw_features |= NETIF_F_TSO;
+ } else {
+ dev->features |= NETIF_F_GSO_SOFTWARE;
+ dev->hw_features |= NETIF_F_GSO_SOFTWARE;
+ }
}
return mtu;
--
1.7.7.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2013-02-18 13:39 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-02-18 13:39 [PATCH net-next 1/2] ip_gre: allow CSUM capable devices to handle packets Dmitry Kravkov
2013-02-18 13:39 ` [PATCH net-next 2/2] ip_gre: propogate target device GSO capability to the tunnel device Dmitry Kravkov
[not found] <1361193320-11181-1-git-send-email-y>
2013-02-18 13:15 ` y
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.