On Mon, Apr 15, 2019 at 01:22:48PM +0300, Leon Romanovsky wrote: > From: Parav Pandit <parav@xxxxxxxxxxxx> > > This series introduces a netlink command to change net namespace of a > rdma device. > > It performs small device disable enable sequence to ensure that there is > no active traffic when device moves to new namespace. This operation > needs to synchronize with device rename and device unregistration. This > is protected using recently introduced unregistration mutex. > > Changelog: > v1->v2: > - Addressed comments from Jason and took simplifications suggested > - Comments to start on next line > - Dropped detailed comment around device refcounting > - merged net ns change code during net exit to single function > - Using common function during netns change and exit net path > - Error unwinding path enables the device while net ns change > - Protecting rdma_rename with device_rwsem > - Added kobject remove add notifications > v0->v1: > - Addressed comments from Jason. > - Added accidentally removed xa_erase > - Moved free_netdevs() out of disable_device for wider use > - Replace refcount get/put from add_compat_devs with lock assert > - Added ibdev->dev get/put to hold on to device while net ns delete > - Corrected comments in __rdma_dev_change_netns for rename op > > Parav Pandit (3): > RDMA/core: Avoid freeing netdevs in disable_device() > RDMA/core: Introduce a helper function to change net namespace of rdma > device > RDMA/core: Add netlink command to change net namespace of rdma device > > drivers/infiniband/core/core_priv.h | 2 + > drivers/infiniband/core/device.c | 130 +++++++++++++++++++++++++++- > drivers/infiniband/core/nldev.c | 13 ++- > include/uapi/rdma/rdma_netlink.h | 6 +- > 4 files changed, 146 insertions(+), 5 deletions(-) Okay, applied to for-next, thanks Jason