[openib-general] [PATCH 5/27] Change saving of user's send wr_id in MAD

Hal Rosenstock halr at voltaire.com
Mon Jul 11 06:54:49 PDT 2005


Move saving of user's send wr_id to better match layering of received
response handling.

Signed-off-by: Sean Hefty <sean.hefty at intel.com>
Signed-off-by: Hal Rosenstock <halr at voltaire.com>

This patch depends on patch 4/27.

-- 
 mad.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
diff -uprN linux-2.6.13-rc2-mm1/drivers/infiniband4/core/mad.c linux-2.6.13-rc2-mm1/drivers/infiniband5/core/mad.c
-- linux-2.6.13-rc2-mm1/drivers/infiniband4/core/mad.c	2005-07-09 15:06:29.000000000 -0400
+++ linux-2.6.13-rc2-mm1/drivers/infiniband5/core/mad.c	2005-07-09 15:08:31.000000000 -0400
@@ -847,9 +847,8 @@ static int ib_send_mad(struct ib_mad_age
 	unsigned long flags;
 	int ret;
 
-	/* Replace user's WR ID with our own to find WR upon completion */
+	/* Set WR ID to find mad_send_wr upon completion */
 	qp_info = mad_agent_priv->qp_info;
-	mad_send_wr->wr_id = mad_send_wr->send_wr.wr_id;
 	mad_send_wr->send_wr.wr_id = (unsigned long)&mad_send_wr->mad_list;
 	mad_send_wr->mad_list.mad_queue = &qp_info->send_queue;
 
@@ -948,6 +947,7 @@ int ib_post_send_mad(struct ib_mad_agent
 		mad_send_wr->send_wr.sg_list = mad_send_wr->sg_list;
 		memcpy(mad_send_wr->sg_list, send_wr->sg_list,
 		       sizeof *send_wr->sg_list * send_wr->num_sge);
+		mad_send_wr->wr_id = mad_send_wr->send_wr.wr_id;
 		mad_send_wr->send_wr.next = NULL;
 		mad_send_wr->tid = send_wr->wr.ud.mad_hdr->tid;
 		mad_send_wr->agent = mad_agent;





More information about the general mailing list