Lines Matching refs:mad

84 static void set_local_comm_id(struct ib_mad *mad, u32 cm_id)  in set_local_comm_id()  argument
86 if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) { in set_local_comm_id()
88 (struct cm_sidr_generic_msg *)mad; in set_local_comm_id()
90 } else if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) { in set_local_comm_id()
94 struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; in set_local_comm_id()
99 static u32 get_local_comm_id(struct ib_mad *mad) in get_local_comm_id() argument
101 if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) { in get_local_comm_id()
103 (struct cm_sidr_generic_msg *)mad; in get_local_comm_id()
105 } else if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) { in get_local_comm_id()
109 struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; in get_local_comm_id()
114 static void set_remote_comm_id(struct ib_mad *mad, u32 cm_id) in set_remote_comm_id() argument
116 if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) { in set_remote_comm_id()
118 (struct cm_sidr_generic_msg *)mad; in set_remote_comm_id()
120 } else if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) { in set_remote_comm_id()
124 struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; in set_remote_comm_id()
129 static u32 get_remote_comm_id(struct ib_mad *mad) in get_remote_comm_id() argument
131 if (mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) { in get_remote_comm_id()
133 (struct cm_sidr_generic_msg *)mad; in get_remote_comm_id()
135 } else if (mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) { in get_remote_comm_id()
139 struct cm_generic_msg *msg = (struct cm_generic_msg *)mad; in get_remote_comm_id()
144 static union ib_gid gid_from_req_msg(struct ib_device *ibdev, struct ib_mad *mad) in gid_from_req_msg() argument
146 struct cm_req_msg *msg = (struct cm_req_msg *)mad; in gid_from_req_msg()
302 struct ib_mad *mad) in mlx4_ib_multiplex_cm_handler() argument
308 if (mad->mad_hdr.attr_id == CM_REQ_ATTR_ID || in mlx4_ib_multiplex_cm_handler()
309 mad->mad_hdr.attr_id == CM_REP_ATTR_ID || in mlx4_ib_multiplex_cm_handler()
310 mad->mad_hdr.attr_id == CM_MRA_ATTR_ID || in mlx4_ib_multiplex_cm_handler()
311 mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID || in mlx4_ib_multiplex_cm_handler()
312 (mad->mad_hdr.attr_id == CM_REJ_ATTR_ID && REJ_REASON(mad) == IB_CM_REJ_TIMEOUT)) { in mlx4_ib_multiplex_cm_handler()
313 sl_cm_id = get_local_comm_id(mad); in mlx4_ib_multiplex_cm_handler()
323 } else if (mad->mad_hdr.attr_id == CM_REJ_ATTR_ID || in mlx4_ib_multiplex_cm_handler()
324 mad->mad_hdr.attr_id == CM_SIDR_REP_ATTR_ID) { in mlx4_ib_multiplex_cm_handler()
327 sl_cm_id = get_local_comm_id(mad); in mlx4_ib_multiplex_cm_handler()
333 slave_id, sl_cm_id, be16_to_cpu(mad->mad_hdr.attr_id)); in mlx4_ib_multiplex_cm_handler()
338 set_local_comm_id(mad, id->pv_cm_id); in mlx4_ib_multiplex_cm_handler()
340 if (mad->mad_hdr.attr_id == CM_DREQ_ATTR_ID) in mlx4_ib_multiplex_cm_handler()
426 struct ib_mad *mad) in mlx4_ib_demux_cm_handler() argument
429 u32 rem_pv_cm_id = get_local_comm_id(mad); in mlx4_ib_demux_cm_handler()
434 if (mad->mad_hdr.attr_id == CM_REQ_ATTR_ID || in mlx4_ib_demux_cm_handler()
435 mad->mad_hdr.attr_id == CM_SIDR_REQ_ATTR_ID) { in mlx4_ib_demux_cm_handler()
441 gid = gid_from_req_msg(ibdev, mad); in mlx4_ib_demux_cm_handler()
458 pv_cm_id = get_remote_comm_id(mad); in mlx4_ib_demux_cm_handler()
462 if (mad->mad_hdr.attr_id == CM_REJ_ATTR_ID && in mlx4_ib_demux_cm_handler()
463 REJ_REASON(mad) == IB_CM_REJ_TIMEOUT && slave) { in mlx4_ib_demux_cm_handler()
469 pv_cm_id, be16_to_cpu(mad->mad_hdr.attr_id)); in mlx4_ib_demux_cm_handler()
475 set_remote_comm_id(mad, id->sl_cm_id); in mlx4_ib_demux_cm_handler()
477 if (mad->mad_hdr.attr_id == CM_DREQ_ATTR_ID || in mlx4_ib_demux_cm_handler()
478 mad->mad_hdr.attr_id == CM_REJ_ATTR_ID) in mlx4_ib_demux_cm_handler()