static void pscom_openib_init(FILE *peer) { psoib_info_msg_t lmsg, rmsg; int rc; pscom.env.debug = arg_verbose; pscom_env_get_int(&pscom.env.debug, ENV_DEBUG); psoib_debug = pscom.env.debug; pscom_env_get_str(&psoib_hca, ENV_OPENIB_HCA); pscom_env_get_uint(&psoib_port, ENV_OPENIB_PORT); pscom_env_get_uint(&psoib_path_mtu, ENV_OPENIB_PATH_MTU); pscom_env_get_uint(&psoib_sendq_size, ENV_OPENIB_SENDQ_SIZE); pscom_env_get_uint(&psoib_recvq_size, ENV_OPENIB_RECVQ_SIZE); pscom_env_get_uint(&psoib_compq_size, ENV_OPENIB_COMPQ_SIZE); psoib_pending_tokens = psoib_pending_tokens_suggestion(); pscom_env_get_uint(&psoib_pending_tokens, ENV_OPENIB_PENDING_TOKENS); rc = psoib_init(); psoib_rc_check("psoib_init()", rc); mcon = psoib_con_create(); assert(mcon); rc = psoib_con_init(mcon, NULL, NULL); psoib_rc_check("psoib_con_init()", rc); psoib_con_get_info_msg(mcon, &lmsg); if (is_client) { info_write(peer, &lmsg); info_read(peer, &rmsg); } else { info_read(peer, &rmsg); info_write(peer, &lmsg); } rc = psoib_con_connect(mcon, &rmsg); psoib_rc_check("psoib_con_connect()", rc); }
static int pscom_openib_con_init(pscom_con_t *con) { return psoib_init(); }