Thanks Sean,
I did "struct ibv_send_wr *bad_send_wr;"
I can see that it is being set to the first work request (the one with wr_id
as zero) by ibv_post_send. The inline data size is indeed 512.
But still - I cannot understand why ibv_post_send is failing.
Regards,
Manoj
-----Original Message-----
From: Hefty, Sean
Sent: Tuesday, September 27, 2011 11:04 AM
To: Manoj Nambiar ; [email protected]
Subject: RE: Issue with ibv_post_send
code snips
start ------------------------------------------------------------------------
----------------------
int rc;
struct ibv_send_wr bad_send_wr[3];
This should just be:
struct ibv_send_wr *bad_send_wr;
On a post error, the pointer will be set to the work request that failed.
(gdb) p rdmaptr->wr[0].sg_list[0]
$24 = {addr = 47966518199024, length = 512, lkey = 2684626508}
Check that your inline data size is 512.
(gdb) p rdmaptr->wr[1].sg_list[0]
$25 = {addr = 47966518134536, length = 8, lkey = 2684626508}
(gdb) p rdmaptr->wr[2].sg_list[0]
$26 = {addr = 47966518134512, length = 8, lkey = 2684626508}
(gdb) p errno
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html