aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/core
diff options
context:
space:
mode:
authorGuy Shapiro <guysh@mellanox.com>2015-10-22 08:20:11 -0400
committerDoug Ledford <dledford@redhat.com>2015-10-28 12:32:48 -0400
commit95893dde99d9d14f8a6ac99ea3103792a8da5f25 (patch)
treee2553696f8abf64abb7ccfb4583e58a784dc78da /drivers/infiniband/core
parentfa20105e09e97e81aadf02f722c31195e4a75c84 (diff)
IB/ucma: Take the network namespace from the process
Add support for network namespaces from user space. This is done by passing the network namespace of the process instead of init_net. Signed-off-by: Haggai Eran <haggaie@mellanox.com> Signed-off-by: Yotam Kenneth <yotamke@mellanox.com> Signed-off-by: Shachar Raindel <raindel@mellanox.com> Signed-off-by: Guy Shapiro <guysh@mellanox.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband/core')
-rw-r--r--drivers/infiniband/core/ucma.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/infiniband/core/ucma.c b/drivers/infiniband/core/ucma.c
index e80c107450ab..8b5a934e1133 100644
--- a/drivers/infiniband/core/ucma.c
+++ b/drivers/infiniband/core/ucma.c
@@ -42,6 +42,7 @@
42#include <linux/slab.h> 42#include <linux/slab.h>
43#include <linux/sysctl.h> 43#include <linux/sysctl.h>
44#include <linux/module.h> 44#include <linux/module.h>
45#include <linux/nsproxy.h>
45 46
46#include <rdma/rdma_user_cm.h> 47#include <rdma/rdma_user_cm.h>
47#include <rdma/ib_marshall.h> 48#include <rdma/ib_marshall.h>
@@ -472,8 +473,8 @@ static ssize_t ucma_create_id(struct ucma_file *file, const char __user *inbuf,
472 return -ENOMEM; 473 return -ENOMEM;
473 474
474 ctx->uid = cmd.uid; 475 ctx->uid = cmd.uid;
475 ctx->cm_id = rdma_create_id(&init_net, ucma_event_handler, ctx, cmd.ps, 476 ctx->cm_id = rdma_create_id(current->nsproxy->net_ns,
476 qp_type); 477 ucma_event_handler, ctx, cmd.ps, qp_type);
477 if (IS_ERR(ctx->cm_id)) { 478 if (IS_ERR(ctx->cm_id)) {
478 ret = PTR_ERR(ctx->cm_id); 479 ret = PTR_ERR(ctx->cm_id);
479 goto err1; 480 goto err1;