[ofa-general] iWARP: Zero STag, OFED 1.3 vs 1.4

Philip Frey1 PHF at zurich.ibm.com
Wed Jan 14 02:21:25 PST 2009


Hello,

I recently upgraded from OFED 1.3 to 1.4 and the behaviour of an STag of 
zero seems to have changed.

Before, the following code worked:

        /* create send work request (for synchronization)*/
        sge.addr = 0;
        sge.length = 0;
        sge.lkey = 0;

        send_wr.wr_id = tx_wr_id++;
        send_wr.next = NULL;
        send_wr.sg_list = &sge;
        send_wr.num_sge = 1;
        send_wr.opcode = IBV_WR_SEND;
        send_wr.send_flags = 0;

        /* post send synchronization WR */
        ret = ibv_post_send(ctx_conn.qp, &send_wr, &bad_wr);
        if (ret) {
                msg_Err("RDMA: failed to post send");
                return -1;
        }

but now it results in the following error:

Jan 13 17:34:46 borus kernel: iwch_ev_dispatch - CQE Err qpid 0xa0 opcode 
3 status 0x1 type 1 wrid.hi 0x0 wrid.lo 0x80000000 
Jan 13 17:34:46 borus kernel: post_qp_event - AE qpid 0xa0 opcode 3 status 
0x1 type 1 wrid.hi 0x0 wrid.lo 0x80000000

I wanted to do a zero-length send w/o a memory region to solve the issue 
that the MPA initiator must send the first FPDU.

Question1: Why didn't that result in an error before?
Question2: Is there a way of doing a zero-length operation w/o having to 
create a MR?

Many thanks for you advice,
 Philip
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/general/attachments/20090114/02c184f1/attachment.html>


More information about the general mailing list