]> git.openfabrics.org - ~shefty/librdmacm.git/commitdiff
refresh (create temporary patch)
authorSean Hefty <sean.hefty@intel.com>
Tue, 26 Jun 2012 23:49:58 +0000 (16:49 -0700)
committerSean Hefty <sean.hefty@intel.com>
Tue, 26 Jun 2012 23:49:58 +0000 (16:49 -0700)
meta
patches/refresh-temp [new file with mode: 0644]

diff --git a/meta b/meta
index fe58b9e9a1cc48716fe9afc375994b8d7c982d47..e44bbc88e26486dd3b7a6a6f4f502b198418227c 100644 (file)
--- a/meta
+++ b/meta
@@ -1,10 +1,11 @@
 Version: 1
-Previous: f8af58b04bfe326e34e3784bc17d219e83cc870d
-Head: b6b9b190f9360838805efed5a2f097e6beb7d5a4
+Previous: 987792133bd31a784b2c1349ac86285bfc0f2e52
+Head: 9e58d865121e298d1d556bf10d3f0a84c7f8959e
 Applied:
   v6only: 3afce107e2baec86c5541ed0acd992e37bcb992a
   rselect: 7d25968d337e976e0e22fdba69c8a2a2f5d35008
   shut_wr: b6b9b190f9360838805efed5a2f097e6beb7d5a4
+  refresh-temp: 9e58d865121e298d1d556bf10d3f0a84c7f8959e
 Unapplied:
   rs-1sge: 8ec392829399dec7ed5c608b8697a482e5faa2de
   ip6-opt: 7e43a759255e9890d1e41f1edf71792836f53941
diff --git a/patches/refresh-temp b/patches/refresh-temp
new file mode 100644 (file)
index 0000000..25626c1
--- /dev/null
@@ -0,0 +1,57 @@
+Bottom: 9c6317e02ea13b4c7c116bc0ca8be00c54af4ed4
+Top:    05a5cd3651f670e432b95b931b9a56acfd6820c7
+Author: Sean Hefty <sean.hefty@intel.com>
+Date:   2012-06-26 16:49:57 -0700
+
+Refresh of shut_wr
+
+---
+
+diff --git a/src/rsocket.c b/src/rsocket.c
+index a25c31a..5fc5404 100644
+--- a/src/rsocket.c
++++ b/src/rsocket.c
+@@ -147,6 +147,7 @@ enum rs_state {
+       rs_connected       =                0x0100,
+       rs_connect_wr      = rs_connected | 0x0200,
+       rs_connect_rd      = rs_connected | 0x0400,
++      rs_connect_rdwr    = rs_connect_rd | rs_connect_wr,
+       rs_connect_error   =                0x0800,
+       rs_disconnected    =                0x1000,
+       rs_error           =                0x2000,
+@@ -632,7 +633,7 @@ int raccept(int socket, struct sockaddr *addr, socklen_t *addrlen)
+       rs_set_conn_data(new_rs, &param, &cresp);
+       ret = rdma_accept(new_rs->cm_id, &param);
+       if (!ret)
+-              new_rs->state = rs_connected;
++              new_rs->state = rs_connect_rdwr;
+       else if (errno == EAGAIN || errno == EWOULDBLOCK)
+               new_rs->state = rs_accepting;
+       else
+@@ -719,7 +720,7 @@ connected:
+               }
+               rs_save_conn_data(rs, cresp);
+-              rs->state = rs_connected;
++              rs->state = rs_connect_rdwr;
+               break;
+       case rs_accepting:
+               if (!(rs->fd_flags & O_NONBLOCK))
+@@ -729,7 +730,7 @@ connected:
+               if (ret)
+                       break;
+-              rs->state = rs_connected;
++              rs->state = rs_connect_rdwr;
+               break;
+       default:
+               ret = ERR(EINVAL);
+@@ -1728,7 +1729,7 @@ int rshutdown(int socket, int how)
+                                   0, 0, 0);
+       }
+-      if (!rs_all_sends_done(rs) && rs->state != rs_error)
++      if (!rs_all_sends_done(rs) && !(rs->state & rs_error))
+               rs_process_cq(rs, 0, rs_all_sends_done);
+       if ((rs->fd_flags & O_NONBLOCK) && (how == SHUT_WR))