Lines Matching refs:cm_id
791 static int rtrs_rdma_do_reject(struct rdma_cm_id *cm_id, int errno);
1558 rdma_disconnect(con->c.cm_id); in rtrs_srv_close_work()
1584 rdma_destroy_id(con->c.cm_id); in rtrs_srv_close_work()
1600 struct rdma_cm_id *cm_id) in rtrs_rdma_do_accept() argument
1624 err = rdma_accept(cm_id, ¶m); in rtrs_rdma_do_accept()
1631 static int rtrs_rdma_do_reject(struct rdma_cm_id *cm_id, int errno) in rtrs_rdma_do_reject() argument
1642 err = rdma_reject(cm_id, &msg, sizeof(msg), IB_CM_REJ_CONSUMER_DEFINED); in rtrs_rdma_do_reject()
1664 struct rdma_cm_id *cm_id, in create_con() argument
1682 con->c.cm_id = cm_id; in create_con()
1735 cm_id->context = &con->c; in create_con()
1749 struct rdma_cm_id *cm_id, in __alloc_path() argument
1763 if (__is_path_w_addr_exists(srv, &cm_id->route.addr)) { in __alloc_path()
1796 srv_path->s.dst_addr = cm_id->route.addr.dst_addr; in __alloc_path()
1797 srv_path->s.src_addr = cm_id->route.addr.src_addr; in __alloc_path()
1813 srv_path->s.dev = rtrs_ib_dev_find_or_add(cm_id->device, &dev_pd); in __alloc_path()
1848 static int rtrs_rdma_connect(struct rdma_cm_id *cm_id, in rtrs_rdma_connect() argument
1852 struct rtrs_srv_ctx *ctx = cm_id->context; in rtrs_rdma_connect()
1923 srv_path = __alloc_path(srv, cm_id, con_num, recon_cnt, in rtrs_rdma_connect()
1933 err = create_con(srv_path, cm_id, cid); in rtrs_rdma_connect()
1936 rtrs_rdma_do_reject(cm_id, err); in rtrs_rdma_connect()
1944 err = rtrs_rdma_do_accept(srv_path, cm_id); in rtrs_rdma_connect()
1947 rtrs_rdma_do_reject(cm_id, err); in rtrs_rdma_connect()
1962 return rtrs_rdma_do_reject(cm_id, err); in rtrs_rdma_connect()
1971 static int rtrs_srv_rdma_cm_handler(struct rdma_cm_id *cm_id, in rtrs_srv_rdma_cm_handler() argument
1983 return rtrs_rdma_connect(cm_id, ev->param.conn.private_data, in rtrs_srv_rdma_cm_handler()
1986 c = cm_id->context; in rtrs_srv_rdma_cm_handler()
2019 struct rdma_cm_id *cm_id; in rtrs_srv_cm_init() local
2022 cm_id = rdma_create_id(&init_net, rtrs_srv_rdma_cm_handler, in rtrs_srv_cm_init()
2024 if (IS_ERR(cm_id)) { in rtrs_srv_cm_init()
2025 ret = PTR_ERR(cm_id); in rtrs_srv_cm_init()
2030 ret = rdma_bind_addr(cm_id, addr); in rtrs_srv_cm_init()
2035 ret = rdma_listen(cm_id, 64); in rtrs_srv_cm_init()
2042 return cm_id; in rtrs_srv_cm_init()
2045 rdma_destroy_id(cm_id); in rtrs_srv_cm_init()