Version: 1
-Previous: 10828e0b9428e28075eb0ff4967d2954623f8af6
-Head: f1d2e9bb14d28f95baa1a815c23a5e231ada3cdb
+Previous: fda6bb13e2339d67de40911481ce8282340904f6
+Head: f2eaacf21e6e8ae686e06706cfa65a2846235872
Applied:
destroy_cqs: 66410c265b2661e16b7f6126bcc4ea5c7e1af1bd
conn-err: ac46465ae6061b06f005ba9b49b371c9eb0d2325
acm-sock: 0a80aa658097b29b5c5126b23b1fa881bcd96c1a
rs-with-acm: fadeaad64ff2d89580b571bee92bf9ecfa7b7396
pre-socket: 8cb5871f6da8f40d9315e4dc57fdbeb9c3ae6de7
- rs-recv-hang: 3d06604f4a50c1ac34d946bb79185d3232a62d90
- refresh-temp: f1d2e9bb14d28f95baa1a815c23a5e231ada3cdb
+ rs-recv-hang: f2eaacf21e6e8ae686e06706cfa65a2846235872
Unapplied:
Hidden:
+++ /dev/null
-Bottom: 28282e93e467479cf3f579a318609dcce14734ca
-Top: 2cbfe934aee51df6666ab0f513aab62c0aeaff98
-Author: Sean Hefty <sean.hefty@intel.com>
-Date: 2012-05-25 17:28:14 -0700
-
-Refresh of rs-recv-hang
-
----
-
-diff --git a/src/rsocket.c b/src/rsocket.c
-index 5eec5d9..dc6fc70 100644
---- a/src/rsocket.c
-+++ b/src/rsocket.c
-@@ -121,6 +121,9 @@ struct rs_conn_data {
- struct rs_sge data_buf;
- };
-
-+/*
-+ * rsocket states are ordered as connecting, connected, disconnected.
-+ */
- enum rs_state {
- rs_init,
- rs_bound,
-@@ -994,9 +997,7 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
- int ret;
-
- rs = idm_at(&idm, socket);
-- if (rs->state != rs_connected &&
-- (rs->state == rs_resolving_addr || rs->state == rs_resolving_route ||
-- rs->state == rs_connecting || rs->state == rs_accepting)) {
-+ if (rs->state < rs_connected) {
- ret = rs_do_connect(rs);
- if (ret) {
- if (errno == EINPROGRESS)
-@@ -1098,7 +1099,7 @@ ssize_t rsend(int socket, const void *buf, size_t len, int flags)
- int ret = 0;
-
- rs = idm_at(&idm, socket);
-- if (rs->state != rs_connected) {
-+ if (rs->state < rs_connected) {
- ret = rs_do_connect(rs);
- if (ret) {
- if (errno == EINPROGRESS)
Bottom: 28282e93e467479cf3f579a318609dcce14734ca
-Top: 28282e93e467479cf3f579a318609dcce14734ca
+Top: 2cbfe934aee51df6666ab0f513aab62c0aeaff98
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 5eec5d9..dc6fc70 100644
+--- a/src/rsocket.c
++++ b/src/rsocket.c
+@@ -121,6 +121,9 @@ struct rs_conn_data {
+ struct rs_sge data_buf;
+ };
+
++/*
++ * rsocket states are ordered as connecting, connected, disconnected.
++ */
+ enum rs_state {
+ rs_init,
+ rs_bound,
+@@ -994,9 +997,7 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
+ int ret;
+
+ rs = idm_at(&idm, socket);
+- if (rs->state != rs_connected &&
+- (rs->state == rs_resolving_addr || rs->state == rs_resolving_route ||
+- rs->state == rs_connecting || rs->state == rs_accepting)) {
++ if (rs->state < rs_connected) {
+ ret = rs_do_connect(rs);
+ if (ret) {
+ if (errno == EINPROGRESS)
+@@ -1098,7 +1099,7 @@ ssize_t rsend(int socket, const void *buf, size_t len, int flags)
+ int ret = 0;
+
+ rs = idm_at(&idm, socket);
+- if (rs->state != rs_connected) {
++ if (rs->state < rs_connected) {
+ ret = rs_do_connect(rs);
+ if (ret) {
+ if (errno == EINPROGRESS)