[openib-general] [CM]problem while connecting

Ian Jiang ianjiang.ict at gmail.com
Tue Feb 28 00:17:19 PST 2006


Hi Roland,
Thanks for your reply!
The previous problem disappeared after I modified my code as you told. But
another one while connecting hold me up:

Feb 28 23:05:02 linux3 kernel:  VIPKL(1):
var/tmp/IBGD/tmp/openib/infiniband/ib_verbs/hw/mellanox-hca/vip/qpm.c[1108]:
VAPI_RESET=>VAPI_RESET, must_mask: 0x0, allowed_mask: 0x1
Feb 28 23:05:02 linux3 kernel:  VIPKL(1):
var/tmp/IBGD/tmp/openib/infiniband/ib_verbs/hw/mellanox-hca/vip/qpm.c[1111]:
The following bits are not supported or allowed in this transition: 0x30
Feb 28 23:05:02 linux3 kernel:
Feb 28 23:05:02 linux3 kernel:
[KERNEL_IB][tsIbTavorQpModify][/var/tmp/IBGD/tmp/openib/infiniband/ib_verbs/hw/provider/tavor_qp.c:457]InfiniHost_III_Lx0:
VAPI_modify_qp failed, return code = -233 (Unsupported attribute)
Feb 28 23:05:02 linux3 kernel:
[IB_CM][ib_cm_connect][/var/tmp/IBGD/tmp/openib/infiniband/ib_cm/cm_api.c:168]ib_qp_modify
to INIT failed

Was this caused by my improper QP creation?
Any suggestion is appreciated. Here are the relative codes of my own:

create QP
=======
    qp_param.limit.max_outstanding_send_request =
        params_p->ib_res.cm_send_cq_size;
    qp_param.limit.max_outstanding_receive_request =
        params_p->ib_res.cm_recv_cq_size;
    qp_param.limit.max_send_gather_element = 1;
    qp_param.limit.max_receive_scatter_element = 1;
    qp_param.pd = params_p->ib_res.cm_pd_p;
    qp_param.send_queue = params_p->ib_res.cm_send_cq_p;
    qp_param.receive_queue = params_p->ib_res.cm_recv_cq_p;
    qp_param.send_policy    = IB_WQ_SIGNAL_SELECTABLE;
    qp_param.receive_policy = IB_WQ_SIGNAL_ALL;
    qp_param.transport      = IB_TRANSPORT_RC;
    qp_param.device_specific = NULL;

  res = ib_qp_create(&qp_param,
            &params_p->ib_res.cm_qp_p,
            &params_p->ib_res.cm_qpn);
    if (res) {
        PRINT_ERR("ib_qp_create failed\n");
        cm_ib_clean(&params_p->ib_res);
        return -1;
    }
    PRINT_TRACE("QP created: 0x%p, Num: 0x%x\n", params_p->ib_res.cm_qp_p,
params_p->ib_res.cm_qpn);



connect
======
    active_param.qp                   = params_p->ib_res.cm_qp_p;
    active_param.req_private_data     = msg_p;
    active_param.req_private_data_len = msg_len;
    active_param.responder_resources  = 4;
    active_param.initiator_depth      = 4;
    active_param.retry_count          = 7;
    active_param.rnr_retry_count      = 7;
    active_param.cm_response_timeout  = 20; /* 4 seconds */
    active_param.max_cm_retries       = 15;
    active_param.flow_control         = 1;

    params_p->ib_res.cm_path.mtu =
        (params_p->ib_res.cm_hca_infor.device_id == 23108) ?
        MTU1024 : MTU2048;
    memcpy(&params_p->ib_res.cm_path.sgid, params_p->ib_res.cm_port_gid,
sizeof(tTS_IB_GID));
    memcpy(&params_p->ib_res.cm_path.dgid, params_p->ib_res.cm_port_gid,
sizeof(tTS_IB_GID));
    params_p->ib_res.cm_path.packet_life = 13; /* FIXME */
    PRINT_TRACE("connect...\n");
    res = ib_cm_connect(&active_param,
                   &params_p->ib_res.cm_path,
                   NULL,
                   params_p->ib_res.dst_service_id,
                   0,
                   params_p->ib_res.call_back_func,
                   (void *)params_p,
                   &params_p->ib_res.cm_comm_id_conn);
    if (res) {
        PRINT_ERR("ib_cm_connect failed\n");
        return -1;
    }



--
Ian Jiang
ianjiang.ict at gmail.com

Laboratory of Spatial Information Technology
Division of System Architecture
Institute of Computing Technology
Chinese Academy of Sciences
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/general/attachments/20060228/875d218b/attachment.html>


More information about the general mailing list