Message ID | 20230214060634.427162-2-yanjun.zhu@intel.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Fix the problem that rxe can not work in net namespace | expand |
在 2023/2/14 14:06, Zhu Yanjun 写道: > From: Zhu Yanjun <yanjun.zhu@linux.dev> > > Originally when the module rdma_rxe is loaded, the sock listening on udp > port 4791 is created. Currently moving the creating listening port to > newlink function. > > So when running "rdma link add" command, the sock listening on udp port > 4791 is created. > > Signed-off-by: Zhu Yanjun <yanjun.zhu@linux.dev> Add netdev@vger.kernel.org. Zhu Yanjun > --- > drivers/infiniband/sw/rxe/rxe.c | 10 ++++------ > 1 file changed, 4 insertions(+), 6 deletions(-) > > diff --git a/drivers/infiniband/sw/rxe/rxe.c b/drivers/infiniband/sw/rxe/rxe.c > index 136c2efe3466..64644cb0bb38 100644 > --- a/drivers/infiniband/sw/rxe/rxe.c > +++ b/drivers/infiniband/sw/rxe/rxe.c > @@ -192,6 +192,10 @@ static int rxe_newlink(const char *ibdev_name, struct net_device *ndev) > goto err; > } > > + err = rxe_net_init(); > + if (err) > + return err; > + > err = rxe_net_add(ibdev_name, ndev); > if (err) { > rxe_dbg(exists, "failed to add %s\n", ndev->name); > @@ -208,12 +212,6 @@ static struct rdma_link_ops rxe_link_ops = { > > static int __init rxe_module_init(void) > { > - int err; > - > - err = rxe_net_init(); > - if (err) > - return err; > - > rdma_link_register(&rxe_link_ops); > pr_info("loaded\n"); > return 0;
diff --git a/drivers/infiniband/sw/rxe/rxe.c b/drivers/infiniband/sw/rxe/rxe.c index 136c2efe3466..64644cb0bb38 100644 --- a/drivers/infiniband/sw/rxe/rxe.c +++ b/drivers/infiniband/sw/rxe/rxe.c @@ -192,6 +192,10 @@ static int rxe_newlink(const char *ibdev_name, struct net_device *ndev) goto err; } + err = rxe_net_init(); + if (err) + return err; + err = rxe_net_add(ibdev_name, ndev); if (err) { rxe_dbg(exists, "failed to add %s\n", ndev->name); @@ -208,12 +212,6 @@ static struct rdma_link_ops rxe_link_ops = { static int __init rxe_module_init(void) { - int err; - - err = rxe_net_init(); - if (err) - return err; - rdma_link_register(&rxe_link_ops); pr_info("loaded\n"); return 0;