[ofa-general] Re: pick the outgoing HCA based on the IP used for bind
Sean Hefty
sean.hefty at intel.com
Thu Feb 12 16:09:01 PST 2009
> It seems that even when the rdma-cm consumer binds to a specific
address,
> the rdma-cm address resolution code follows the order of the
>devices/rules
> in routing table. So the user can't really dictate an outgoing interface
> based on the src address provided to rdma_resolve_addr.
>
>Did you had the chance to look into that?
I'm running 2.6.28 with 1 HCA with 2 ports. I added debug output around calls
to rdma_translate_ip() and cma_acquire_dev(). The short answer is that things
appear to work as expected.
ib0 is on port 1 - 192.168.0.102
ib1 is on port 2 - 192.168.0.122
If I run ucmatose -b ip_addr (with or without -s option), I see that
rdma_translate_ip() returns different net_device structures for the different
input addresses. cma_acquire_dev() also indicates that different ports on the
same HCA are being used for the two addresses.
If I unplug one of the ports, I can no long connect if I use the IP address that
corresponds to that port, but the other port still works. It doesn't matter
which port I unplug, as long as I use the correct IP address.
- Sean
More information about the general
mailing list