-Bottom: 6bbc2f526b97dfafc16e7ec34dc8e4e1ce587f40
-Top: 716b79e70dbab52362acd7d5f3617b47129f7001
+Bottom: d551dadf671871078fc6a8314f4015e8e5d6e78a
+Top: 7292817ed24068611ad6cac825c4f26c8476920e
Author: Sean Hefty <sean.hefty@intel.com>
Date: 2012-05-18 17:07:11 -0700
/*
* Fast synchronization for low contention locking.
diff --git a/src/rsocket.c b/src/rsocket.c
-index de0ec3e..331db78 100644
+index 01b7248..388cf90 100644
--- a/src/rsocket.c
+++ b/src/rsocket.c
@@ -55,6 +55,8 @@
if (rs->sbuf) {
if (rs->smr)
rdma_dereg_mr(rs->smr);
-@@ -386,7 +421,7 @@ static void rs_set_conn_data(struct rsocket *rs, struct rdma_conn_param *param,
+@@ -383,7 +418,7 @@ static void rs_set_conn_data(struct rsocket *rs, struct rdma_conn_param *param,
{
conn->version = 1;
conn->flags = rs_host_is_net() ? RS_CONN_FLAG_NET : 0;
conn->reserved2 = 0;
conn->target_sgl.addr = htonll((uintptr_t) rs->target_sgl);
-@@ -706,7 +741,7 @@ static void rs_send_credits(struct rsocket *rs)
+@@ -703,7 +738,7 @@ static void rs_send_credits(struct rsocket *rs)
struct rs_sge sge;
rs->ctrl_avail--;
if (rs->rbuf_bytes_avail >= (rs->rbuf_size >> 1)) {
if (!(rs->opts & RS_OPT_SWAP_SGL)) {
sge.addr = (uintptr_t) &rs->rbuf[rs->rbuf_free_offset];
-@@ -723,7 +758,7 @@ static void rs_send_credits(struct rsocket *rs)
+@@ -720,7 +755,7 @@ static void rs_send_credits(struct rsocket *rs)
ibsge.length = sizeof(sge);
rs_post_write(rs, 0, &ibsge, 1,
IBV_SEND_INLINE,
rs->remote_sgl.addr +
rs->remote_sge * sizeof(struct rs_sge),
-@@ -737,7 +772,7 @@ static void rs_send_credits(struct rsocket *rs)
+@@ -734,7 +769,7 @@ static void rs_send_credits(struct rsocket *rs)
rs->remote_sge = 0;
} else {
rs_post_write(rs, 0, NULL, 0,
}
}
-@@ -781,7 +816,7 @@ static int rs_poll_cq(struct rsocket *rs)
+@@ -778,7 +813,7 @@ static int rs_poll_cq(struct rsocket *rs)
default:
rs->rmsg[rs->rmsg_tail].op = rs_msg_op(imm_data);
rs->rmsg[rs->rmsg_tail].data = rs_msg_data(imm_data);
rs->rmsg_tail = 0;
break;
}
-@@ -923,7 +958,7 @@ static int rs_have_rdata(struct rsocket *rs)
+@@ -920,7 +955,7 @@ static int rs_have_rdata(struct rsocket *rs)
static int rs_all_sends_done(struct rsocket *rs)
{
}
static ssize_t rs_peek(struct rsocket *rs, void *buf, size_t len)
-@@ -940,7 +975,7 @@ static ssize_t rs_peek(struct rsocket *rs, void *buf, size_t len)
+@@ -937,7 +972,7 @@ static ssize_t rs_peek(struct rsocket *rs, void *buf, size_t len)
rsize = left;
} else {
rsize = rs->rmsg[rmsg_head].data;
rmsg_head = 0;
}
-@@ -1001,7 +1036,7 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
+@@ -998,7 +1033,7 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
} else {
rs->rseq_no++;
rsize = rs->rmsg[rs->rmsg_head].data;