Re: [PATCH rdma-next v1 0/5] Register infiniband class as net namespace aware class

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

 



On Tue, Feb 26, 2019 at 01:56:10PM +0200, Leon Romanovsky wrote:
> From: Leon Romanovsky <leonro@xxxxxxxxxxxx>
> 
> Changelog:
>  v0->v1:
>  * Rebased.
>  * rdma_init_coredev is made static
>  * ib_compat_device is just ib_core_device as id not used.
>  * Using XA_FLAGS_ALLOC
>  * Added missing xa_destroy
>  * Use xa_reserve, xa_store during add_one_compat_dev
>  * Extra NULL initialization
>  * No need for locking during xa_alloc
>  * Put add_remove/compat_devs in enable/disable device
>
> >From Parav:
> 
> Currently 'infiniband' class is registered as net namespace agnostic
> class due to which all rdma devices are visible in all net namespaces.
> Due to which net namespace filter needs to be applied on per sysfs
> entry such as GID or GID attribute for RoCE. This is fine as long
> as there is one rdma device shared among multiple net namespaces.
> 
> However, when there are multiple rdma devices, it is desired to see only
> one or more rdma devices per net namespace. With different link layer
> types, there are various use case and mode exists. At minimum there are
> two use cases.
> 
> (a) a shared rdma device among multiple net namespaces
> (b) rdma device bound to a particular net namespace
> 
> In preparation to support backward compatibility to existing use cases
> and also to support future (rdma device bound to net namespace),
> 
> 1. Prepare rdma infiniband class to be net namespace aware; So that when
> rdma device is bound to a net namespace in future, it can be restricted
> to a single net namespace. This requires a class to be net namespace
> aware. By doing so, a standard kernel framework of sysfs can be utilized
> to isolate devices in net namespaces.
> This is similar to how net class is net namespace aware following
> standard kernel architecture.
> 
> 2. Replicate the sysfs tree in non init_net namespaces for backward
> compatibility, so that existing applications continue to operate in
> shared mode.
> 
> This functionality is achieved by ib_core implementing a compat
> ib_core_device which replicates the device and sysfs entries in non
> init_net namespaces. It is desired to not create a full ib_device,
> therefore an internal ib_core_device object is created which represents
> only needed device tree and sysfs entries.
> 
> A diagram, details and its objectives are captured in
> Documentation/infiniband/core_devices.txt.
> 
> Thanks
> 
> Parav Pandit (5):
>   RDMA/core: Introduce ib_core_device to hold device
>   RDMA/core: Restrict sysfs entries view to init_net
>   RDMA/core: Implement compat device/sysfs tree in net namespace
>   RDMA/core: Support core port attributes in non init_net

Applied to for-next, thanks

>   RDMA/core: Add Documentation for ib_core_device

This didn't seem to add much value, so I dropped it..

Jason



[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