Lines Matching defs:mad

85 static void set_local_comm_id(struct ib_mad *mad, u32 cm_id)
87 if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) {
89 (struct cm_sidr_generic_msg *)mad;
91 } else if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) {
95 struct cm_generic_msg *msg = (struct cm_generic_msg *)mad;
100 static u32 get_local_comm_id(struct ib_mad *mad)
102 if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) {
104 (struct cm_sidr_generic_msg *)mad;
106 } else if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) {
110 struct cm_generic_msg *msg = (struct cm_generic_msg *)mad;
115 static void set_remote_comm_id(struct ib_mad *mad, u32 cm_id)
117 if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) {
119 (struct cm_sidr_generic_msg *)mad;
121 } else if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) {
125 struct cm_generic_msg *msg = (struct cm_generic_msg *)mad;
130 static u32 get_remote_comm_id(struct ib_mad *mad)
132 if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) {
134 (struct cm_sidr_generic_msg *)mad;
136 } else if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) {
140 struct cm_generic_msg *msg = (struct cm_generic_msg *)mad;
145 static union ib_gid gid_from_req_msg(struct ib_device *ibdev, struct ib_mad *mad)
147 struct cm_req_msg *msg = (struct cm_req_msg *)mad;
303 struct ib_mad *mad)
309 if (mad->mad_hdr.attr_id == CM_REQ_ATTR_ID ||
310 mad->mad_hdr.attr_id == CM_REP_ATTR_ID ||
311 mad->mad_hdr.attr_id == CM_MRA_ATTR_ID ||
312 mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID ||
313 (mad->mad_hdr.attr_id == CM_REJ_ATTR_ID && REJ_REASON(mad) == IB_CM_REJ_TIMEOUT)) {
314 sl_cm_id = get_local_comm_id(mad);
324 } else if (mad->mad_hdr.attr_id == CM_REJ_ATTR_ID ||
325 mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) {
328 sl_cm_id = get_local_comm_id(mad);
334 slave_id, sl_cm_id, be16_to_cpu(mad->mad_hdr.attr_id));
339 set_local_comm_id(mad, id->pv_cm_id);
341 if (mad->mad_hdr.attr_id == CM_DREQ_ATTR_ID)
427 struct ib_mad *mad)
430 u32 rem_pv_cm_id = get_local_comm_id(mad);
435 if (mad->mad_hdr.attr_id == CM_REQ_ATTR_ID ||
436 mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) {
442 gid = gid_from_req_msg(ibdev, mad);
459 pv_cm_id = get_remote_comm_id(mad);
463 if (mad->mad_hdr.attr_id == CM_REJ_ATTR_ID &&
464 REJ_REASON(mad) == IB_CM_REJ_TIMEOUT && slave) {
470 pv_cm_id, be16_to_cpu(mad->mad_hdr.attr_id));
476 set_remote_comm_id(mad, id->sl_cm_id);
478 if (mad->mad_hdr.attr_id == CM_DREQ_ATTR_ID ||
479 mad->mad_hdr.attr_id == CM_REJ_ATTR_ID)