Re: [PATCH] link-local address fix for rdma_resolve_addr

Jason Gunthorpe
2009-10-16T19:28:49Z

On Fri, Oct 16, 2009 at 11:54:39AM -0700, David J. Wilder wrote:

> There is the wrinkle in this plan. If you pass ip6_route_output() your
> own link-local address (scoped or not) it returns a neighbor entry bound
> to the loop back device.

Well, that really is correct. The RDMA CM could try to do something
smart if lo is returned from the route lookup - ie choose the first
RDMA device bound to that IP or something.

There are other problems with the loop back case, like the Linux stack
doesn't generate neighbor entries for its own IP addresses.

The loopback case is far less important than the other policy routing
features anyhow..

> I will post a patch with our first solution and include the fix to
> addr_resolve_local().

May as well, a little bit of progress is better than none at all.

Also note that I observed that the IPv6 code path never sets the
source address from the routing table if IN6_ADDR_ANY is used as
source, this is certainly wrong and could cause other problems down
the line, probably more so for iwarp than IB though..

Jason