]> err.no Git - linux-2.6/commitdiff
[BRIDGE]: TSO fix in br_dev_queue_push_xmit
authorVlad Drukker <vlad@storewiz.com>
Fri, 23 Sep 2005 06:35:34 +0000 (23:35 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 23 Sep 2005 06:35:34 +0000 (23:35 -0700)
Signed-off-by: Vlad Drukker <vlad@storewiz.com>
Acked-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/br_forward.c

index 069253f830c10cd777d22662e976c89a593a2547..2d24fb400e0cbbd79ef064758b69bbebf07e0ccb 100644 (file)
@@ -31,7 +31,8 @@ static inline int should_deliver(const struct net_bridge_port *p,
 
 int br_dev_queue_push_xmit(struct sk_buff *skb)
 {
-       if (skb->len > skb->dev->mtu) 
+       /* drop mtu oversized packets except tso */
+       if (skb->len > skb->dev->mtu && !skb_shinfo(skb)->tso_size)
                kfree_skb(skb);
        else {
 #ifdef CONFIG_BRIDGE_NETFILTER