[net-next,6/6] openvswitch: Compute checksum in skb_gso_segment() if needed

Message ID 4220a182739328641da98ef62f7b7699c3459c88.1386943635.git.tgraf@suug.ch
State Awaiting Upstream, archived
Delegated to: David Miller
Headers show

Commit Message

Thomas Graf Dec. 13, 2013, 2:22 p.m.
The copy & csum optimization is no longer present with zerocopy
enabled. Compute the checksum in skb_gso_segment() directly by
dropping the HW CSUM capability from the features passed in.

Signed-off-by: Thomas Graf <tgraf@suug.ch>
 net/openvswitch/datapath.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)


diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c
index ffed1cd..20ac30e 100644
--- a/net/openvswitch/datapath.c
+++ b/net/openvswitch/datapath.c
@@ -311,7 +311,7 @@  static int queue_gso_packets(struct datapath *dp, struct sk_buff *skb,
 	struct sk_buff *segs, *nskb;
 	int err;
-	segs = __skb_gso_segment(skb, NETIF_F_SG | NETIF_F_HW_CSUM, false);
+	segs = __skb_gso_segment(skb, NETIF_F_SG, false);
 	if (IS_ERR(segs))
 		return PTR_ERR(segs);