|
|
@@ -716,22 +716,22 @@ int rdma_addr_find_l2_eth_by_grh(const union ib_gid *sgid,
|
|
|
struct rdma_dev_addr dev_addr;
|
|
|
struct resolve_cb_context ctx;
|
|
|
union {
|
|
|
- struct sockaddr _sockaddr;
|
|
|
struct sockaddr_in _sockaddr_in;
|
|
|
struct sockaddr_in6 _sockaddr_in6;
|
|
|
} sgid_addr, dgid_addr;
|
|
|
int ret;
|
|
|
|
|
|
- rdma_gid2ip(&sgid_addr._sockaddr, sgid);
|
|
|
- rdma_gid2ip(&dgid_addr._sockaddr, dgid);
|
|
|
+ rdma_gid2ip((struct sockaddr *)&sgid_addr, sgid);
|
|
|
+ rdma_gid2ip((struct sockaddr *)&dgid_addr, dgid);
|
|
|
|
|
|
memset(&dev_addr, 0, sizeof(dev_addr));
|
|
|
dev_addr.bound_dev_if = ndev->ifindex;
|
|
|
dev_addr.net = &init_net;
|
|
|
|
|
|
init_completion(&ctx.comp);
|
|
|
- ret = rdma_resolve_ip(&sgid_addr._sockaddr, &dgid_addr._sockaddr,
|
|
|
- &dev_addr, 1000, resolve_cb, &ctx);
|
|
|
+ ret = rdma_resolve_ip((struct sockaddr *)&sgid_addr,
|
|
|
+ (struct sockaddr *)&dgid_addr, &dev_addr, 1000,
|
|
|
+ resolve_cb, &ctx);
|
|
|
if (ret)
|
|
|
return ret;
|
|
|
|