[openib-general] ip_ib_mc_map?
Michael S. Tsirkin
mst at mellanox.co.il
Thu Feb 1 01:06:28 PST 2007
> From a reason that no one at RH can trace... someone went and removed
> all the support for ARPHRD_INFINIBAND multicast from u4 where it exists
> perfectly fine in u3 and hopefully on u5 as well (Doug can you update?),
> see https://bugs.openfabrics.org/show_bug.cgi?id=2661
>
> Specifically, the below snip from the patch means that on rh4 u4 all
> IPv4 ARPHRD_INFINIBAND multicast goes on the broadcast group !!!
>
> > Index: linux-2.6.9/net/ipv4/arp.c
> > ===================================================================
> > --- linux-2.6.9.orig/net/ipv4/arp.c 2004-10-18 23:55:06.000000000 +0200
> > +++ linux-2.6.9/net/ipv4/arp.c 2006-09-20 14:43:59.000000000 +0300
> > @@ -213,6 +213,9 @@
> > case ARPHRD_IEEE802_TR:
> > ip_tr_mc_map(addr, haddr);
> > return 0;
> > + case ARPHRD_INFINIBAND:
> > + ip_ib_mc_map(addr, haddr);
> > + return 0;
> > default:
> > if (dir) {
> > memcpy(haddr, dev->broadcast, dev->addr_len);
>
> anyway, OFED wise, i see two ways to solve this:
>
> 1) adding a backport to the rdma_cm containing ip_ib_mc_map, period.
>
> This means that apps offloading multicast traffic through the rdma cm
> would use the correct group where apps working through the net stack
> use the broadcast group.
>
> 2) having the rdma cm follow the net stack and make its consumer use the
> broadcast group.
Correct. Since multicast is broken in other respects on U4
(sockets can't join multicast groups), I think 2 is the simplest approach.
Anyone who wants IPoIB milticast should just stay away from U4.
--
MST
More information about the general
mailing list