Liang Zhen wrote: > When I dug into code, I found when creating bonding device, > alloc_netdev(...ether_setup) will always set net_device::type to > ARPHRD_ETHER, that means if binding cmid on bonding device, > rdma_copy_addr() will always set rdma_dev_addr::dev_type to > RDMA_NODE_RNIC, seems not correct to me... am I wrong?
Yes wrong, assuming you have access to Linux box with IB stack up and running you could trivially see this if setting ipoib/bonding and then running one of the librdmacm utils while instructing it to bind to a bond (I recommend you go and do that). Now how it works? when the first ipoib device is added to the bond, bonding senses a mismatch between its ethertype to the bond one and calls bond_setup_by_slave(), this along with bonding automatically setting fail_over_mac to be BOND_FOM_ACTIVE for ipoib device, does the job. Or. _______________________________________________ general mailing list general@lists.openfabrics.org http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general