> $ ./rb 192.168.20.47 > event_channel: 0x6093c0 > cm_id: 0x602cb0 > sgid: fe 80 00 00 00 00 00 00 00 02 c9 03 00 e9 c0 81 > > --> with 3.12 > > $ ./rb 192.168.20.17 > event_channel: 0x6093c0 > cm_id: 0x6034c0 > sgid: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > > There many commits for the 3.11 AF_IB merge, hope you can dig it out > quickly.. > > Or. > > linux-2.6]# git log --oneline v3.10.. drivers/infiniband/core/cma.c .. > edaa7a5 RDMA/ucma: Add ability to query GID addresses
As part of the AF_IB changes, additional queries were introduced that separated out retrieving the different kernel data -- assigned address, GID mappings, and IB PR data. (New queries were necessary, since sockaddr_ib is larger than sockaddr_in6, and we want to eventually handle non-reversible paths.) The librdmacm 1.0.17 changed which query was called after rdma_bind_addr was invoked to only retrieve the assigned address, versus retrieving everything. I think this is why you see an SGID of all 0's after calling rdma_bind_addr. librdmacm 1.0.16 does not enable AF_IB for user space, and should return the SGID. Assuming that this interpretation of the problem is correct, a fix for 1.0.17 would be to add a call to ucma_query_gid() from rdma_bind_addr2() - note '2' - if the specified address is not 'any address'. - Sean -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
