Version: 1
-Previous: e5bffca9b430393771c67ecc43ff7e985bb5a510
-Head: ac46465ae6061b06f005ba9b49b371c9eb0d2325
+Previous: 05ddb625360a9e931ea608f734ec8487d148d4fa
+Head: 9fe16d42109fffc021dce5a12e072815d7487b96
Applied:
destroy_cqs: 66410c265b2661e16b7f6126bcc4ea5c7e1af1bd
conn-err: ac46465ae6061b06f005ba9b49b371c9eb0d2325
+ rs-recv-hang: 9fe16d42109fffc021dce5a12e072815d7487b96
Unapplied:
rs-qpsize: 742f75282720fc80c028108daba43b3680d72d52
rs-opts: b8f05919dd1522e7298c6e94ea100671c4fb2f17
acm-init: 666fa02d8f18ac2e98008cd3d57a90a864203548
pre-socket: 659f605c2d6bdba067651138aa5ffc01f14465d6
rs-states: 94e4650160dd8b32efd7e1befe3b179487bd7cac
- rs-recv-hang: aaca54f9c8fbc522a62c8abd86cc7fc28a551389
rstream-opt: dd89287ce678fa211e3f427497f42e447c48b56d
rs-1sge: 85e4c4a0da0b501b60a1035d7a003ee20a749511
rs-def-inline: 6ad70d3b80178e40fea97f662a6b31e51cddc0af
-Bottom: 82e13151ae7719d96c8c400a99918961bc514175
-Top: fdfaeba03cd72a5fb2f57a5316f270c905d4dc15
+Bottom: f1dcc179b934b653b4de6f28bbbed627b9fc6acd
+Top: dbe6733eee8ec766ba73d02b7ae6f014b50b846a
Author: Sean Hefty <sean.hefty@intel.com>
Date: 2012-05-25 17:24:08 -0700
---
diff --git a/src/rsocket.c b/src/rsocket.c
-index 9ce58d5..c111797 100644
+index 01b7248..8c96dc1 100644
--- a/src/rsocket.c
+++ b/src/rsocket.c
-@@ -954,6 +954,11 @@ static int rs_can_send(struct rsocket *rs)
+@@ -908,6 +908,11 @@ static int rs_can_send(struct rsocket *rs)
(rs->target_sgl[rs->target_sge].length != 0);
}
static int rs_can_send_ctrl(struct rsocket *rs)
{
return rs->ctrl_avail;
-@@ -964,6 +969,11 @@ static int rs_have_rdata(struct rsocket *rs)
+@@ -918,6 +923,11 @@ static int rs_have_rdata(struct rsocket *rs)
return (rs->rmsg_head != rs->rmsg_tail);
}
+
static int rs_all_sends_done(struct rsocket *rs)
{
- return (rs->sqe_avail + rs->ctrl_avail) == rs->sq_size;
-@@ -1024,7 +1034,7 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
+ return (rs->sqe_avail + rs->ctrl_avail) == RS_QP_SIZE;
+@@ -980,7 +990,7 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
}
fastlock_acquire(&rs->rlock);
if (!rs_have_rdata(rs)) {
if (ret && errno != ECONNRESET)
goto out;
}
-@@ -1128,9 +1138,14 @@ ssize_t rsend(int socket, const void *buf, size_t len, int flags)
+@@ -1084,9 +1094,14 @@ ssize_t rsend(int socket, const void *buf, size_t len, int flags)
fastlock_acquire(&rs->slock);
for (left = len; left; left -= xfer_size, buf += xfer_size) {
if (!rs_can_send(rs)) {
}
if (olen < left) {
-@@ -1237,9 +1252,14 @@ static ssize_t rsendv(int socket, const struct iovec *iov, int iovcnt, int flags
+@@ -1193,9 +1208,14 @@ static ssize_t rsendv(int socket, const struct iovec *iov, int iovcnt, int flags
fastlock_acquire(&rs->slock);
for (left = len; left; left -= xfer_size) {
if (!rs_can_send(rs)) {