Hannes Schulz
2007-Apr-18 17:22 UTC
[Bridge] [SOLVED][2.4.22] bad interaction between e100 and bridge: BUG at dev.c:991!
This was the problem:>setup & how to reproduce: >HP Netserver 2000 with 2 onboard e100 NICs. Both are connected to >the same hub. >Add both eth0 and eth1 to the same bridge. Pull the plug on eth0. >Wait till the bridge is about to enter forwarding state on eth1. > >I have reproduced this with earlier kernels (2.4.20+) too but they >were heavily patched. This is a pristine 2.4.22. > >Strange but true: This works when using eepro100 insted of e100.It turned out that the IP receive checksumming on the board (which the e100 driver enables) triggered a bug in the bridging code. The following patch by Stephen Hemminger fixed it: diff -Nru a/net/bridge/br_forward.c b/net/bridge/br_forward.c --- a/net/bridge/br_forward.c Fri Sep 5 11:28:33 2003 +++ b/net/bridge/br_forward.c Fri Sep 5 11:28:33 2003 @@ -59,6 +59,7 @@ indev = skb->dev; skb->dev = to->dev; + skb->ip_summed = CHECKSUM_NONE; NF_HOOK(PF_BRIDGE, NF_BR_FORWARD, skb, indev, skb->dev, __br_forward_finish); Thank you for solving my problem! Hannes