public inbox for linux-rdma@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] RDMA net namespace
@ 2022-10-23 22:04 Zhu Yanjun
  2022-10-23 13:04 ` Leon Romanovsky
                   ` (5 more replies)
  0 siblings, 6 replies; 33+ messages in thread
From: Zhu Yanjun @ 2022-10-23 22:04 UTC (permalink / raw)
  To: jgg, leon, linux-rdma, yanjun.zhu, yanjun.zhu

From: Zhu Yanjun <yanjun.zhu@linux.dev>

There are shared and exclusive modes in RDMA net namespace. After
discussion with Leon, the above modes are compatible with legacy IB
device. 

To the RoCE and iWARP devices, the ib devices should be in the same net
namespace with the related net devices regardless of in shared or
exclusive mode.

In the first commit, when the net devices are moved to a new net
namespace, the related ib devices are also moved to the same net
namespace.

In the second commit, the shared/exclusive modes still work with legacy
ib devices. To the RoCE and iWARP devices, these modes will not be
considered.

Because MLX4/5 do not call the function ib_device_set_netdev to map ib
devices and the related net devices, the function ib_device_get_by_netdev
can not get ib devices from net devices. In the third commit, all the
registered ib devices are parsed to get the net devices, then compared
with the given net devices.

The steps to make tests:
1) Create a new net namespace net0

   ip netns add net0

2) Show the rdma links in init_net

   rdma link

   "
   link mlx5_0/1 state DOWN physical_state DISABLED netdev enp7s0np1
   "

3) Move the net device to net namespace net0

   ip link set enp7s0np1 netns net0

4) Show the rdma links in init_net again

   rdma link

   There is no rdma links

5) Show the rdma links in net0

   ip netns exec net0 rdma link

   "
   link mlx5_0/1 state DOWN physical_state DISABLED netdev enp7s0np1
   "

We can confirm that rdma links are moved to the same net namespace with
the net devices.

Zhu Yanjun (3):
  RDMA/core: Move ib device to the same net namespace with net device
  RDMA/core: The legacy IB devices still work with shared/exclusive mode
  RDMA/core: Get all the ib devices from net devices

 drivers/infiniband/core/device.c | 107 ++++++++++++++++++++++++++++++-
 1 file changed, 105 insertions(+), 2 deletions(-)

-- 
2.27.0


^ permalink raw reply	[flat|nested] 33+ messages in thread

end of thread, other threads:[~2022-11-11  2:44 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-10-23 22:04 [PATCH 0/3] RDMA net namespace Zhu Yanjun
2022-10-23 13:04 ` Leon Romanovsky
2022-10-23 13:42   ` Yanjun Zhu
2022-10-23 16:45     ` Leon Romanovsky
2022-10-24  7:20       ` yanjun.zhu
2022-10-23 22:04 ` [PATCH 1/3] RDMA/core: Move ib device to the same net namespace with net device Zhu Yanjun
2022-10-23 22:04 ` [PATCH 2/3] RDMA/core: The legacy IB devices still work with shared/exclusive mode Zhu Yanjun
2022-10-23 22:04 ` [PATCH 3/3] RDMA/core: Get all the ib devices from net devices Zhu Yanjun
2022-10-24  1:10 ` [PATCH 0/3] RDMA net namespace Dust Li
2022-10-24  6:15   ` yanjun.zhu
2022-10-24 11:52     ` Dust Li
2022-10-24 13:12       ` Yanjun Zhu
2022-10-24 14:35         ` Dust Li
2022-10-24 16:41           ` Jason Gunthorpe
2022-10-25  2:51           ` Yanjun Zhu
2022-10-26  4:08             ` Dust Li
2022-10-26 15:01 ` Dust Li
2022-10-27  2:30   ` Dust Li
2022-10-27  2:54     ` yanjun.zhu
2022-10-27  3:01     ` Parav Pandit
2022-10-27  3:07       ` yanjun.zhu
2022-10-27  3:10         ` Parav Pandit
2022-10-27  3:17           ` yanjun.zhu
2022-10-27  3:21             ` Parav Pandit
2022-10-27  3:39               ` yanjun.zhu
2022-10-27  3:48                 ` Parav Pandit
2022-10-27  6:01                   ` yanjun.zhu
2022-10-27 14:06                     ` Parav Pandit
2022-10-28  3:21                       ` Yanjun Zhu
2022-10-28  3:31                         ` Parav Pandit
2022-10-28  3:49                           ` Yanjun Zhu
2022-10-28  3:58                             ` Parav Pandit
2022-11-11  2:38                               ` Yanjun Zhu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox