diff options
author | Thomas Graf <tgraf@suug.ch> | 2013-12-13 09:22:22 -0500 |
---|---|---|
committer | Jesse Gross <jesse@nicira.com> | 2014-01-06 18:53:24 -0500 |
commit | 09c5e6054e206ecf13945f50711856a5cb2d5de1 (patch) | |
tree | bc81d09ae6a56eade80edd5f6ab8baf873e2ab33 /net/openvswitch | |
parent | bda56f143c9dc38ae7926ba21ebeb35359a6c051 (diff) |
openvswitch: 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 <tgraf@suug.ch>
Signed-off-by: Jesse Gross <jesse@nicira.com>
Diffstat (limited to 'net/openvswitch')
-rw-r--r-- | net/openvswitch/datapath.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/openvswitch/datapath.c b/net/openvswitch/datapath.c index 85578342d566..61ae3b86a995 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, | |||
311 | struct sk_buff *segs, *nskb; | 311 | struct sk_buff *segs, *nskb; |
312 | int err; | 312 | int err; |
313 | 313 | ||
314 | segs = __skb_gso_segment(skb, NETIF_F_SG | NETIF_F_HW_CSUM, false); | 314 | segs = __skb_gso_segment(skb, NETIF_F_SG, false); |
315 | if (IS_ERR(segs)) | 315 | if (IS_ERR(segs)) |
316 | return PTR_ERR(segs); | 316 | return PTR_ERR(segs); |
317 | 317 | ||