aboutsummaryrefslogtreecommitdiffstats
path: root/include/rdma/rdma_cm.h
diff options
context:
space:
mode:
authorSean Hefty <sean.hefty@intel.com>2006-11-30 19:33:14 -0500
committerRoland Dreier <rolandd@cisco.com>2006-12-12 14:50:21 -0500
commita1b1b61f80aba49f1e0f32b0e4b1c35be91c57fa (patch)
tree8bd7253546835791ff5a74bf17464992ea038cbf /include/rdma/rdma_cm.h
parent9b2e9c0c241e532d923fff23d9a7c0bd31bd96b1 (diff)
RDMA/cma: Report connect info with connect events
Connection information was never given to the recipient of a connection request or reply message. Only the event was delivered. Report the connection data with the event to allows user to reject the connection based on the requested parameters, or adjust their resources to match the request. Signed-off-by: Sean Hefty <sean.hefty@intel.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'include/rdma/rdma_cm.h')
-rw-r--r--include/rdma/rdma_cm.h31
1 files changed, 16 insertions, 15 deletions
diff --git a/include/rdma/rdma_cm.h b/include/rdma/rdma_cm.h
index 4c07f9699d06..aa6ce47537a2 100644
--- a/include/rdma/rdma_cm.h
+++ b/include/rdma/rdma_cm.h
@@ -77,11 +77,25 @@ struct rdma_route {
77 int num_paths; 77 int num_paths;
78}; 78};
79 79
80struct rdma_conn_param {
81 const void *private_data;
82 u8 private_data_len;
83 u8 responder_resources;
84 u8 initiator_depth;
85 u8 flow_control;
86 u8 retry_count; /* ignored when accepting */
87 u8 rnr_retry_count;
88 /* Fields below ignored if a QP is created on the rdma_cm_id. */
89 u8 srq;
90 u32 qp_num;
91};
92
80struct rdma_cm_event { 93struct rdma_cm_event {
81 enum rdma_cm_event_type event; 94 enum rdma_cm_event_type event;
82 int status; 95 int status;
83 void *private_data; 96 union {
84 u8 private_data_len; 97 struct rdma_conn_param conn;
98 } param;
85}; 99};
86 100
87struct rdma_cm_id; 101struct rdma_cm_id;
@@ -204,19 +218,6 @@ void rdma_destroy_qp(struct rdma_cm_id *id);
204int rdma_init_qp_attr(struct rdma_cm_id *id, struct ib_qp_attr *qp_attr, 218int rdma_init_qp_attr(struct rdma_cm_id *id, struct ib_qp_attr *qp_attr,
205 int *qp_attr_mask); 219 int *qp_attr_mask);
206 220
207struct rdma_conn_param {
208 const void *private_data;
209 u8 private_data_len;
210 u8 responder_resources;
211 u8 initiator_depth;
212 u8 flow_control;
213 u8 retry_count; /* ignored when accepting */
214 u8 rnr_retry_count;
215 /* Fields below ignored if a QP is created on the rdma_cm_id. */
216 u8 srq;
217 u32 qp_num;
218};
219
220/** 221/**
221 * rdma_connect - Initiate an active connection request. 222 * rdma_connect - Initiate an active connection request.
222 * 223 *