From: Thomas Graf Date: Tue, 17 Dec 2013 01:03:45 +0000 (-0800) Subject: datapath: Compute checksum in skb_gso_segment() if needed X-Git-Tag: sliver-openvswitch-2.1.90-1~10^2~150 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=1d04cd4e722c63e8d5564c6c993b04a891f1e867;p=sliver-openvswitch.git datapath: Compute checksum in skb_gso_segment() if needed 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 Signed-off-by: Jesse Gross --- diff --git a/datapath/datapath.c b/datapath/datapath.c index 608afda93..b42fd8bd4 100644 --- a/datapath/datapath.c +++ b/datapath/datapath.c @@ -313,7 +313,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);