• Home
  • Raw
  • Download

Lines Matching refs:cm_id

227 		 event->event, ch->cm_id, ch->sess_name, srpt_get_ch_state(ch));  in srpt_qp_event()
231 ib_cm_notify(ch->cm_id, event->event); in srpt_qp_event()
990 ret = ib_cm_init_qp_attr(ch->cm_id, &qp_attr, &attr_mask); in srpt_ch_qp_rtr()
1020 ret = ib_cm_init_qp_attr(ch->cm_id, &qp_attr, &attr_mask); in srpt_ch_qp_rts()
1807 srp_tsk->task_tag, srp_tsk->tag, ch->cm_id, ch->sess); in srpt_handle_tsk_mgmt()
2094 qp_init->cap.max_send_wr, ch->cm_id); in srpt_create_ch_ib()
2159 ib_send_cm_rej(ch->cm_id, IB_CM_REJ_NO_RESOURCES, NULL, 0, in __srpt_close_ch()
2163 if (ib_send_cm_dreq(ch->cm_id, NULL, 0) < 0) in __srpt_close_ch()
2220 static void srpt_drain_channel(struct ib_cm_id *cm_id) in srpt_drain_channel() argument
2229 sdev = cm_id->context; in srpt_drain_channel()
2233 if (ch->cm_id == cm_id) { in srpt_drain_channel()
2263 struct ib_cm_id *cm_id) in srpt_find_channel() argument
2274 if (ch->cm_id == cm_id) { in srpt_find_channel()
2319 ib_destroy_cm_id(ch->cm_id); in srpt_release_channel_work()
2370 static int srpt_cm_req_recv(struct ib_cm_id *cm_id, in srpt_cm_req_recv() argument
2374 struct srpt_device *sdev = cm_id->context; in srpt_cm_req_recv()
2444 && param->listen_id == ch->sport->sdev->cm_id in srpt_cm_req_recv()
2445 && ch->cm_id) { in srpt_cm_req_recv()
2456 ch->sess_name, ch->cm_id, ch_state); in srpt_cm_req_recv()
2494 ch->cm_id = cm_id; in srpt_cm_req_recv()
2563 ch->sess_name, ch->cm_id); in srpt_cm_req_recv()
2588 ret = ib_send_cm_rep(cm_id, rep_param); in srpt_cm_req_recv()
2625 ib_send_cm_rej(cm_id, IB_CM_REJ_CONSUMER_DEFINED, NULL, 0, in srpt_cm_req_recv()
2636 static void srpt_cm_rej_recv(struct ib_cm_id *cm_id) in srpt_cm_rej_recv() argument
2638 pr_info("Received IB REJ for cm_id %p.\n", cm_id); in srpt_cm_rej_recv()
2639 srpt_drain_channel(cm_id); in srpt_cm_rej_recv()
2648 static void srpt_cm_rtu_recv(struct ib_cm_id *cm_id) in srpt_cm_rtu_recv() argument
2653 ch = srpt_find_channel(cm_id->context, cm_id); in srpt_cm_rtu_recv()
2671 static void srpt_cm_timewait_exit(struct ib_cm_id *cm_id) in srpt_cm_timewait_exit() argument
2673 pr_info("Received IB TimeWait exit for cm_id %p.\n", cm_id); in srpt_cm_timewait_exit()
2674 srpt_drain_channel(cm_id); in srpt_cm_timewait_exit()
2677 static void srpt_cm_rep_error(struct ib_cm_id *cm_id) in srpt_cm_rep_error() argument
2679 pr_info("Received IB REP error for cm_id %p.\n", cm_id); in srpt_cm_rep_error()
2680 srpt_drain_channel(cm_id); in srpt_cm_rep_error()
2686 static void srpt_cm_dreq_recv(struct ib_cm_id *cm_id) in srpt_cm_dreq_recv() argument
2692 ch = srpt_find_channel(cm_id->context, cm_id); in srpt_cm_dreq_recv()
2695 pr_debug("cm_id= %p ch->state= %d\n", cm_id, srpt_get_ch_state(ch)); in srpt_cm_dreq_recv()
2713 if (ib_send_cm_drep(ch->cm_id, NULL, 0) < 0) in srpt_cm_dreq_recv()
2723 static void srpt_cm_drep_recv(struct ib_cm_id *cm_id) in srpt_cm_drep_recv() argument
2725 pr_info("Received InfiniBand DREP message for cm_id %p.\n", cm_id); in srpt_cm_drep_recv()
2726 srpt_drain_channel(cm_id); in srpt_cm_drep_recv()
2739 static int srpt_cm_handler(struct ib_cm_id *cm_id, struct ib_cm_event *event) in srpt_cm_handler() argument
2746 ret = srpt_cm_req_recv(cm_id, &event->param.req_rcvd, in srpt_cm_handler()
2750 srpt_cm_rej_recv(cm_id); in srpt_cm_handler()
2754 srpt_cm_rtu_recv(cm_id); in srpt_cm_handler()
2757 srpt_cm_dreq_recv(cm_id); in srpt_cm_handler()
2760 srpt_cm_drep_recv(cm_id); in srpt_cm_handler()
2763 srpt_cm_timewait_exit(cm_id); in srpt_cm_handler()
2766 srpt_cm_rep_error(cm_id); in srpt_cm_handler()
3195 sdev->cm_id = ib_create_cm_id(device, srpt_cm_handler, sdev); in srpt_add_one()
3196 if (IS_ERR(sdev->cm_id)) in srpt_add_one()
3210 if (ib_cm_listen(sdev->cm_id, cpu_to_be64(srpt_service_guid), 0)) in srpt_add_one()
3268 ib_destroy_cm_id(sdev->cm_id); in srpt_add_one()
3302 ib_destroy_cm_id(sdev->cm_id); in srpt_remove_one()