[ofa-general] [PATCH] IB/IPoIB: Don't let a bad muticast address in the join list stop subsequent joins

Moni Shoua monis at Voltaire.COM
Tue Jul 7 10:31:47 PDT 2009


Roland Dreier wrote:

>  After this patch, do we end up with
> an IPoIB interface that's not a member of the all hosts multicast group?
> (That seems like it would lead to confusing breakage later)
> 
In my search for a solution to the issue with bonding I found the answer for this.
I checked what will be the affect of delaying the decision of what is the device type 
until first the slave comes. This causes arp_mc_map() to fail and the address is 
not added to the mc list. On the other hand, the IPoIO will be a member of all hosts 
because dev_open()) does that for any net device that it is called for (see below).

linux-ck8g:/root # ip m s dev ib0
16:     ib0
        link  00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:00:00:00:fb
        link  00:ff:ff:ff:ff:12:60:1b:ff:ff:00:00:00:00:00:01:ff:98:2f:c5
        link  00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:00:00:00:01 users 2
        link  00:ff:ff:ff:ff:12:60:1b:ff:ff:00:00:00:00:00:00:00:00:00:01 users 2
        inet  224.0.0.1
        inet6 ff02::1


However, there is a side affect. The bonding interface will be registered only to the inet 
address of all hosts but not to the link address. This is until dev_open is called again (see 
below again)

linux-ck8g:/root # ip m s dev bond0
18:     bond0
        link  00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:00:00:00:fb
        link  00:ff:ff:ff:ff:12:60:1b:ff:ff:00:00:00:00:00:01:ff:98:2f:c5
        inet  224.0.0.251
        inet  224.0.0.1
        inet6 ff02::1:ff98:2fc5
        inet6 ff02::1
linux-ck8g:/root # ifconfig bond0 down
linux-ck8g:/root # ifconfig bond0 up
linux-ck8g:/root # ip m s dev bond0
18:     bond0
        link  00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:00:00:00:fb
        link  00:ff:ff:ff:ff:12:60:1b:ff:ff:00:00:00:00:00:01:ff:98:2f:c5
        link  00:ff:ff:ff:ff:12:60:1b:ff:ff:00:00:00:00:00:00:00:00:00:01
        link  00:ff:ff:ff:ff:12:40:1b:ff:ff:00:00:00:00:00:00:00:00:00:01
        inet  224.0.0.251
        inet  224.0.0.1
        inet6 ff02::1:ff98:2fc5
        inet6 ff02::1
linux-ck8g:/root #                                                                        

I don't want to leave it like that but just for curiosity, it is bad that the
bond interface is not registered to the all hosts group if its slave is?

thanks



More information about the general mailing list