Or Gerlitz wrote:
> Modify the kernel rdma cm use the ipoib broadcast group qkey instead a qkey
> of its own for its UD IDs/QPs. For RDMA_PS_UDP ID, the qkey is stored in
> struct rdma_id_private and delivered also in ADDR_RESOLVED and
> CONNECT_REQUEST events. The user space library learns the qkey from these
> events and use them when it is called to create UD QP.

Overall, I think this is a reasonable approach.  I would just like the 
framework 
to provide a way to restrict any userspace application from joining an ipoib 
multicast group.  What do you think of the idea of creating a new port space 
specific to ipoib, similar to what's provided for SDP?

For example, add:

enum rdma_port_space {
        RDMA_PS_SDP   = 0x0001,
+       RDMA_PS_IPOIB = 0x0002,
        RDMA_PS_TCP   = 0x0106,
        RDMA_PS_UDP   = 0x0111,

The qkey/MGID would adjust based on the port space, which is specified as part 
of rdma_create_id().  Use of RDMA_PS_IPOIB could then be restricted using a 
check similar to that used for port assignment (see cma_use_port() - 
capable(CAP_NET_BIND_SERVICE)).

- Sean

_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to