Skip to content

Commit

Permalink
RDMA/cma: Add multicast communication support
Browse files Browse the repository at this point in the history
Extend rdma_cm to support multicast communication.  Multicast support
is added to the existing RDMA_PS_UDP port space, as well as a new
RDMA_PS_IPOIB port space.  The latter port space allows joining the
multicast groups used by IPoIB, which enables offloading IPoIB traffic
to a separate QP.  The port space determines the signature used in the
MGID when joining the group.  The newly added RDMA_PS_IPOIB also
allows for unicast operations, similar to RDMA_PS_UDP.

Supporting the RDMA_PS_IPOIB requires changing how UD QPs are initialized,
since we can no longer assume that the qkey is constant.  This requires
saving the Q_Key to use when attaching to a device, so that it is
available when creating the QP.  The Q_Key information is exported to
the user through the existing rdma_init_qp_attr() interface.

Multicast support is also exported to userspace through the rdma_ucm.

Signed-off-by: Roland Dreier <[email protected]>
  • Loading branch information
shefty authored and Roland Dreier committed Feb 16, 2007
1 parent faec2f7 commit c8f6a36
Show file tree
Hide file tree
Showing 5 changed files with 549 additions and 52 deletions.
Loading

0 comments on commit c8f6a36

Please sign in to comment.