Version: 1
-Previous: 13d1bcbd2b2132c3e965444e291f4821996fb402
-Head: a932a825f6a814c75963c05579a6dd13e68c5f32
+Previous: 48ef6005052ce9ba640527924100b8385d22b82f
+Head: d322cc176ae382ffe270200ff18c362d26ce4fbe
Applied:
cma-rm-pd: 2ffda7f2991395570b9e776ff5ae256ca9684771
transpose: 3e52eb22f44eafaefa95c4674bc5665a94e15694
init-getname: 7d988863b218d1b66e3739ec4b6f51acc72b2334
rs-ftp: 28e0744eb89227fbeded485fbad64010b9edf0f6
mpi-finalize: a932a825f6a814c75963c05579a6dd13e68c5f32
+ refresh-temp: d322cc176ae382ffe270200ff18c362d26ce4fbe
Unapplied:
dbg: 0c269855776d3001e37da8c8afe283c20e1d6cd6
waitall-buggy: c49c6b56c55385774065f5aa2704078e6ae0ceb8
--- /dev/null
+Bottom: 886009990f4d52636c380f5b4c4f051be1a8608f
+Top: 34a422e20b6864421c4dcbf249875027c9956b02
+Author: Sean Hefty <sean.hefty@intel.com>
+Date: 2012-07-26 23:11:19 -0700
+
+Refresh of mpi-finalize
+
+---
+
+diff --git a/src/rsocket.c b/src/rsocket.c
+index 784d3f8..c53d5d5 100644
+--- a/src/rsocket.c
++++ b/src/rsocket.c
+@@ -132,7 +132,8 @@ union rs_wr_id {
+ };
+ };
+
+-#define RS_RECV_WR_ID ~NULL
++#define RS_RECV_WR_ID (~((uint64_t) 0))
++
+ /*
+ * rsocket states are ordered as passive, connecting, connected, disconnected.
+ */
+@@ -419,6 +420,19 @@ err1:
+ return -1;
+ }
+
++static inline int
++rs_post_recv(struct rsocket *rs)
++{
++ struct ibv_recv_wr wr, *bad;
++
++ wr.wr_id = RS_RECV_WR_ID;
++ wr.next = NULL;
++ wr.sg_list = NULL;
++ wr.num_sge = 0;
++
++ return rdma_seterrno(ibv_post_recv(rs->cm_id->qp, &wr, &bad));
++}
++
+ static int rs_create_ep(struct rsocket *rs)
+ {
+ struct ibv_qp_init_attr qp_attr;
+@@ -450,7 +464,7 @@ static int rs_create_ep(struct rsocket *rs)
+ return ret;
+
+ for (i = 0; i < rs->rq_size; i++) {
+- ret = rdma_post_recvv(rs->cm_id, RS_RECV_WR_ID, NULL, 0);
++ ret = rs_post_recv(rs);
+ if (ret)
+ return ret;
+ }
+@@ -924,7 +938,7 @@ static int rs_poll_cq(struct rsocket *rs)
+
+ if (rs->state & rs_connected) {
+ while (!ret && rcnt--)
+- ret = rdma_post_recvv(rs->cm_id, RS_RECV_WR_ID, NULL, 0);
++ ret = rs_post_recv(rs);
+
+ if (ret) {
+ rs->state = rs_error;