[PATCH rdma-next 0/7] Add netlink command to change net namespace of rdma device

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Leon Romanovsky <leonro@xxxxxxxxxxxx>

>From Parav,

This series refactors the code of ib_register_device() and
ib_unregister_device() to reuse it in helper function for performing
mini unregistration-registration sequence.

Followed by that, it adds a helper function to change net namespace of
rdma device. This is done ether when netlink command is received or when
the net namespace is deleted, where device moves back to default
init_net net namespace.

This unregistration-registration sequence ensures that all traffic has
stopped on a specified rdma device.

Currently net namespce of those rdma devices can be changed, which
doesn't register theirn own port specific init functions and which
support disassociating a user context.

Once infrastructure callback API port_uninit() is developed,
this limitation will be removed.

Thanks

Parav Pandit (7):
  RDMA: Rename port_callback to port_init
  RDMA/core: Introduce and use helper functions for clients add/removal
  RDMA/core: Introduce helper functions for cache cleanup, update
  RDMA/core: Introduce a helper function to change net namespace of rdma
    device
  RDMA/core: Move rdma device to init_net when net ns is deleted
  IB/ipoib: Read net namespace of parent rdma device and set for netdev
  RDMA/nldev: Add RDMA netlink cmd to change IB device net namespace

 Documentation/infiniband/core_devices.txt     |   2 +-
 drivers/infiniband/core/cache.c               |  25 ++-
 drivers/infiniband/core/core_priv.h           |  12 +-
 drivers/infiniband/core/device.c              | 192 ++++++++++++++----
 drivers/infiniband/core/net_namespace.c       |  29 +++
 drivers/infiniband/core/nldev.c               |   9 +
 drivers/infiniband/core/sysfs.c               |   6 +-
 drivers/infiniband/hw/bnxt_re/main.c          |   2 +-
 drivers/infiniband/hw/cxgb3/iwch_provider.c   |   2 +-
 drivers/infiniband/hw/cxgb4/provider.c        |   2 +-
 drivers/infiniband/hw/hfi1/verbs.c            |   2 +-
 drivers/infiniband/hw/hns/hns_roce_main.c     |   2 +-
 drivers/infiniband/hw/i40iw/i40iw_verbs.c     |   2 +-
 drivers/infiniband/hw/mlx4/main.c             |   2 +-
 drivers/infiniband/hw/mlx5/main.c             |   2 +-
 drivers/infiniband/hw/mthca/mthca_provider.c  |   2 +-
 drivers/infiniband/hw/nes/nes_verbs.c         |   2 +-
 drivers/infiniband/hw/ocrdma/ocrdma_main.c    |   2 +-
 drivers/infiniband/hw/qedr/main.c             |   2 +-
 drivers/infiniband/hw/qib/qib_verbs.c         |   2 +-
 drivers/infiniband/hw/usnic/usnic_ib_main.c   |   2 +-
 .../infiniband/hw/vmw_pvrdma/pvrdma_main.c    |   2 +-
 drivers/infiniband/sw/rdmavt/vt.c             |   5 +-
 drivers/infiniband/sw/rxe/rxe_verbs.c         |   2 +-
 drivers/infiniband/ulp/ipoib/ipoib_main.c     |   1 +
 include/rdma/ib_verbs.h                       |  11 +-
 include/rdma/rdma_vt.h                        |   3 -
 include/uapi/rdma/rdma_netlink.h              |   5 +
 28 files changed, 246 insertions(+), 86 deletions(-)

--
2.19.1




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux