On Tue, 20 Sep 2005 21:07:39 +0300 Vlad Drukker <vlad@xxxxxxxxxxxx> wrote: > Hi there, > > There is a bug in linux bridge code, causing TSO not to work. > MTU oversize packets silently dropped in br_dev_queue_push_xmit() > Locally generated TSO packets are bigger than MTU (surprise, eh) > > The patch below, works for me. > Consider to apply. > > David, is it OK to drop packets silently? > This drop condition isn't recorded in any of interface statistics. > Should it be? > > Best wishes, > Vlad Drukker. > > _____________________________________________________________________ > > > diff --git a/net/bridge/br_forward.c b/net/bridge/br_forward.c > --- a/net/bridge/br_forward.c > +++ b/net/bridge/br_forward.c > @@ -31,7 +31,8 @@ static inline int should_deliver(const s > > 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 > Please send patches to bridge@xxxxxxxx and netdev@xxxxxxxxx and add Signed-off-by: - : send the line "unsubscribe linux-net" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html