diff options
author | Parav Pandit <parav@mellanox.com> | 2018-01-08 17:04:43 +0200 |
---|---|---|
committer | Jason Gunthorpe <jgg@mellanox.com> | 2018-01-10 22:00:33 -0700 |
commit | 608bc44634f3a1ce624d9e8586d05a6887bb3b3c (patch) | |
tree | fc34ece30dea9dcd0d0208a1c201353714397428 /drivers/infiniband/core/cma.c | |
parent | 8cf12d7780b72ee421d18e1f8a15daf43fa6d1e6 (diff) | |
download | op-kernel-dev-608bc44634f3a1ce624d9e8586d05a6887bb3b3c.zip op-kernel-dev-608bc44634f3a1ce624d9e8586d05a6887bb3b3c.tar.gz |
RDMA/cma: Use the right net namespace for the rdma_cm_id
The net namespace is set in addr during create_rdma_id(),
cma_resolve_iboe_route() should use that instead of the
init namespace.
The original code was added in commit fa20105e09e9 ("IB/cma: Add support
for network namespaces"), but this path wasn't in use back then.
This patch updates the code to use right namespace, as preparation
for improving namespace support.
Signed-off-by: Parav Pandit <parav@mellanox.com>
Reviewed-by: Mark Bloch <markb@mellanox.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'drivers/infiniband/core/cma.c')
-rw-r--r-- | drivers/infiniband/core/cma.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/infiniband/core/cma.c b/drivers/infiniband/core/cma.c index 65c55f7..7db2355 100644 --- a/drivers/infiniband/core/cma.c +++ b/drivers/infiniband/core/cma.c @@ -2566,7 +2566,8 @@ static int cma_resolve_iboe_route(struct rdma_id_private *id_priv) goto err2; } - ndev = dev_get_by_index(&init_net, addr->dev_addr.bound_dev_if); + ndev = dev_get_by_index(addr->dev_addr.net, + addr->dev_addr.bound_dev_if); if (!ndev) { ret = -ENODEV; goto err2; @@ -2582,7 +2583,7 @@ static int cma_resolve_iboe_route(struct rdma_id_private *id_priv) gid_type = ib_network_to_gid_type(addr->dev_addr.network); route->path_rec->rec_type = sa_conv_gid_to_pathrec_type(gid_type); - sa_path_set_ndev(route->path_rec, &init_net); + sa_path_set_ndev(route->path_rec, addr->dev_addr.net); sa_path_set_ifindex(route->path_rec, ndev->ifindex); sa_path_set_dmac(route->path_rec, addr->dev_addr.dst_dev_addr); |