[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#697357: bridging broken over bond interfaces



I'm having similar issues, and in my case it is the intel igb driver.

I have the following setup:

==========
# brctl show
bridge name	bridge id		STP enabled	interfaces
br0		8000.0025906bde00	no		bond0
							kvm01tap0
-----
# ip addr show
...
2: eth0: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000
    link/ether 00:25:90:6b:de:00 brd ff:ff:ff:ff:ff:ff
3: eth1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc mq master bond0 state UP qlen 1000
    link/ether 00:25:90:6b:de:00 brd ff:ff:ff:ff:ff:ff

5: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc mq master br0 state UP qlen 1000
    link/ether 00:25:90:6b:de:00 brd ff:ff:ff:ff:ff:ff

7: kvm01tap0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP qlen 500
    link/ether 52:fa:04:aa:fb:f1 brd ff:ff:ff:ff:ff:ff

6: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
    link/ether 00:25:90:6b:de:00 brd ff:ff:ff:ff:ff:ff
    inet 213.145.98.98/24 brd 213.145.98.255 scope global br0
       valid_lft forever preferred_lft forever
==========

I.e. eth0 & eth1 are part of bond0, which in turn is joined into br0 together with tap0. Ethernet hw is Intel I350 using igb driver.

This setup works with Linux kernel 2.6.32 & 3.2.9, but does not work with 3.2.0.

It works with 3.2.0 if I manually turn promiscuous mode on for eth0 like this:

==========
# ip link set dev eth0 promisc on
==========

I've compiled igb.ko from http://sourceforge.net/projects/e1000/files/igb%20stable/3.4.7/ and it works fine.

So, this driver (from 3.2.0 kernel) does not work:
==========
# modinfo tmp/igb-k3.2.0.ko |grep ^version:
version:        3.2.10-k
==========

While this one from sourceforge works:
==========
# modinfo tmp/igb-3.4.7.ko |grep ^version:
version:        3.4.7
==========


HTH

-- 
Teodor Milkov | System Administrator | ICDSoft Ltd.


Reply to: