From: Ben Pfaff Date: Fri, 9 Jan 2009 19:46:06 +0000 (-0800) Subject: datapath: Don't drop oversize GSO frames, since GSO will break them up. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=db3dae1ab3fc0e9a4eb7b6ed456966971d942961;p=openvswitch datapath: Don't drop oversize GSO frames, since GSO will break them up. Fixes TCP performance problems on Xen. All credit to Justin for diagnosis. --- diff --git a/datapath/datapath.c b/datapath/datapath.c index c3a107e0..a6c54c90 100644 --- a/datapath/datapath.c +++ b/datapath/datapath.c @@ -659,7 +659,7 @@ int dp_xmit_skb(struct sk_buff *skb) { int len = skb->len; - if (packet_length(skb) > skb->dev->mtu) { + if (packet_length(skb) > skb->dev->mtu && !skb_is_gso(skb)) { printk("dropped over-mtu packet: %d > %d\n", packet_length(skb), skb->dev->mtu); kfree_skb(skb);