RDMA/ucma: Allow user space to specify AF_IB when joining multicast
Allow user space applications to join multicast groups using MGIDs directly. MGIDs may be passed using AF_IB addresses. Since the current multicast join command only supports addresses as large as sockaddr_in6, define a new structure for joining addresses specified using sockaddr_ib. Since AF_IB allows the user to specify the qkey when resolving a remote UD QP address, when joining the multicast group use the qkey value, if one has been assigned. Signed-off-by: Sean Hefty <sean.hefty@intel.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
This commit is contained in:
committed by
Roland Dreier
parent
209cf2a751
commit
5bc2b7b397
@@ -64,7 +64,8 @@ enum {
|
||||
RDMA_USER_CM_CMD_MIGRATE_ID,
|
||||
RDMA_USER_CM_CMD_QUERY,
|
||||
RDMA_USER_CM_CMD_BIND,
|
||||
RDMA_USER_CM_CMD_RESOLVE_ADDR
|
||||
RDMA_USER_CM_CMD_RESOLVE_ADDR,
|
||||
RDMA_USER_CM_CMD_JOIN_MCAST
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -242,6 +243,15 @@ struct rdma_ucm_join_ip_mcast {
|
||||
__u32 id;
|
||||
};
|
||||
|
||||
struct rdma_ucm_join_mcast {
|
||||
__u64 response; /* rdma_ucma_create_id_resp */
|
||||
__u64 uid;
|
||||
__u32 id;
|
||||
__u16 addr_size;
|
||||
__u16 reserved;
|
||||
struct sockaddr_storage addr;
|
||||
};
|
||||
|
||||
struct rdma_ucm_get_event {
|
||||
__u64 response;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user