]> git.openfabrics.org - ~shefty/librdmacm.git/commitdiff
refresh
authorSean Hefty <sean.hefty@intel.com>
Tue, 5 Jun 2012 23:58:52 +0000 (16:58 -0700)
committerSean Hefty <sean.hefty@intel.com>
Tue, 5 Jun 2012 23:58:52 +0000 (16:58 -0700)
meta
patches/refresh-temp [deleted file]
patches/rs-spin

diff --git a/meta b/meta
index 8c42cfb58ec27241a963725aad099eb344f3da0c..b358ff6b059ddd79009285b68573467fe7e9102e 100644 (file)
--- a/meta
+++ b/meta
@@ -1,12 +1,11 @@
 Version: 1
-Previous: a3a99e7d7a6e56aff81b05cf1cc6bbff69fe8024
-Head: 45c6c19136b6ae7ca65a42ab83766fd928d80245
+Previous: 259f8b831b8a84b267bef42deb3bb4fb5303dfae
+Head: 68a62bc98bd991130af0c0ef432d10c922600846
 Applied:
   ip6-opt: a459c228426c4d25684dcfd2a4203f013f0b454e
   rs-shutdown: f16748cbaea650f19805ddc6652895ca88d36a45
   rs-maxseg: e7a519b8ae91403c8c0d29b2a86ae376b37a71c1
-  rs-spin: 4b246948b989fe86f8243b48fc252a29f41c237c
-  refresh-temp: 45c6c19136b6ae7ca65a42ab83766fd928d80245
+  rs-spin: 68a62bc98bd991130af0c0ef432d10c922600846
 Unapplied:
   rs-defaults: 807a6096f8e62176464b95e5907f34a6727c2a05
   buf-addr: eb70620389ced3c0c705d44b69e691a47cd3e4fd
diff --git a/patches/refresh-temp b/patches/refresh-temp
deleted file mode 100644 (file)
index 026741e..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-Bottom: 79b36b9ed22f77cfe81e888155e383bcf09e5e9f
-Top:    9023ede0dfcb282ab90f7726e5c637c9ff842534
-Author: Sean Hefty <sean.hefty@intel.com>
-Date:   2012-06-05 16:58:52 -0700
-
-Refresh of rs-spin
-
----
-
-diff --git a/src/cma.c b/src/cma.c
-index 140e22c..f688c4c 100755
---- a/src/cma.c
-+++ b/src/cma.c
-@@ -276,7 +276,6 @@ int ucma_init(void)
-       cma_dev_cnt = dev_cnt;
-       ucma_set_af_ib_support();
--      rs_configure();
-       pthread_mutex_unlock(&mut);
-       ibv_free_device_list(dev_list);
-       return 0;
-diff --git a/src/cma.h b/src/cma.h
-index 828c6aa..cedc0c3 100644
---- a/src/cma.h
-+++ b/src/cma.h
-@@ -114,7 +114,6 @@ static inline int ERR(int err)
- }
- int ucma_init();
--void rs_configure();
- extern int af_ib_support;
- #define RAI_ROUTEONLY         0x01000000
-diff --git a/src/rsocket.c b/src/rsocket.c
-index bb66503..90f9a10 100644
---- a/src/rsocket.c
-+++ b/src/rsocket.c
-@@ -204,11 +204,22 @@ struct rsocket {
- void rs_configure(void)
- {
-       FILE *f;
-+      static int init;
-+
-+      if (init)
-+              return;
-+
-+      pthread_mutex_lock(&mut);
-+      if (init)
-+              goto out;
-       if ((f = fopen(RS_CONF_DIR "/polling_time", "r"))) {
-               fscanf(f, "%u", &polling_time);
-               fclose(f);
-       }
-+      init = 1;
-+out:
-+      pthread_mutex_unlock(&mut);
- }
- /*
-@@ -485,6 +496,7 @@ int rsocket(int domain, int type, int protocol)
-           (type != SOCK_STREAM) || (protocol && protocol != IPPROTO_TCP))
-               return ERR(ENOTSUP);
-+      rs_configure();
-       rs = rs_alloc(NULL);
-       if (!rs)
-               return ERR(ENOMEM);
index 777ddfb0175ac778ad1918d89e9764d12432ebef..9223eda24b3361f9a77cf0b3e2d615e4d1dab134 100644 (file)
@@ -1,5 +1,5 @@
 Bottom: 729b947f8c52c96a11c4a33ff4ef447cd22cc5d1
-Top:    79b36b9ed22f77cfe81e888155e383bcf09e5e9f
+Top:    9023ede0dfcb282ab90f7726e5c637c9ff842534
 Author: Sean Hefty <sean.hefty@intel.com>
 Date:   2012-06-04 14:51:41 -0700
 
@@ -49,31 +49,11 @@ index dec6064..3ee7f9b 100644
 +
  AC_CONFIG_FILES([Makefile librdmacm.spec])
  AC_OUTPUT
-diff --git a/src/cma.c b/src/cma.c
-index f688c4c..140e22c 100755
---- a/src/cma.c
-+++ b/src/cma.c
-@@ -276,6 +276,7 @@ int ucma_init(void)
-       cma_dev_cnt = dev_cnt;
-       ucma_set_af_ib_support();
-+      rs_configure();
-       pthread_mutex_unlock(&mut);
-       ibv_free_device_list(dev_list);
-       return 0;
 diff --git a/src/cma.h b/src/cma.h
-index 2ee4767..828c6aa 100644
+index 2ee4767..cedc0c3 100644
 --- a/src/cma.h
 +++ b/src/cma.h
-@@ -114,6 +114,7 @@ static inline int ERR(int err)
- }
- int ucma_init();
-+void rs_configure();
- extern int af_ib_support;
- #define RAI_ROUTEONLY         0x01000000
-@@ -166,4 +167,13 @@ struct ibv_path_data
+@@ -166,4 +166,13 @@ struct ibv_path_data
  };
  #endif
  
@@ -88,7 +68,7 @@ index 2ee4767..828c6aa 100644
 +
  #endif /* CMA_H */
 diff --git a/src/rsocket.c b/src/rsocket.c
-index e899e8a..bb66503 100644
+index e899e8a..90f9a10 100644
 --- a/src/rsocket.c
 +++ b/src/rsocket.c
 @@ -37,10 +37,12 @@
@@ -113,24 +93,43 @@ index e899e8a..bb66503 100644
  /*
   * Immediate data format is determined by the upper bits
   * bit 31: message type, 0 - data, 1 - control
-@@ -197,6 +201,16 @@ struct rsocket {
+@@ -197,6 +201,27 @@ struct rsocket {
        uint8_t           *sbuf;
  };
  
 +void rs_configure(void)
 +{
 +      FILE *f;
++      static int init;
++
++      if (init)
++              return;
++
++      pthread_mutex_lock(&mut);
++      if (init)
++              goto out;
 +
 +      if ((f = fopen(RS_CONF_DIR "/polling_time", "r"))) {
 +              fscanf(f, "%u", &polling_time);
 +              fclose(f);
 +      }
++      init = 1;
++out:
++      pthread_mutex_unlock(&mut);
 +}
 +
  /*
   * We currently generate a completion per send.  sqe_count = 1
   */
-@@ -924,6 +938,29 @@ static int rs_process_cq(struct rsocket *rs, int nonblock, int (*test)(struct rs
+@@ -471,6 +496,7 @@ int rsocket(int domain, int type, int protocol)
+           (type != SOCK_STREAM) || (protocol && protocol != IPPROTO_TCP))
+               return ERR(ENOTSUP);
++      rs_configure();
+       rs = rs_alloc(NULL);
+       if (!rs)
+               return ERR(ENOMEM);
+@@ -924,6 +950,29 @@ static int rs_process_cq(struct rsocket *rs, int nonblock, int (*test)(struct rs
        return ret;
  }
  
@@ -160,7 +159,7 @@ index e899e8a..bb66503 100644
  static int rs_nonblocking(struct rsocket *rs, int flags)
  {
        return (rs->fd_flags & O_NONBLOCK) || (flags & MSG_DONTWAIT);
-@@ -1035,7 +1072,7 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
+@@ -1035,7 +1084,7 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags)
        }
        fastlock_acquire(&rs->rlock);
        if (!rs_have_rdata(rs)) {
@@ -169,7 +168,7 @@ index e899e8a..bb66503 100644
                if (ret && errno != ECONNRESET)
                        goto out;
        }
-@@ -1139,8 +1176,8 @@ ssize_t rsend(int socket, const void *buf, size_t len, int flags)
+@@ -1139,8 +1188,8 @@ 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)) {
@@ -180,7 +179,7 @@ index e899e8a..bb66503 100644
                        if (ret)
                                break;
                        if (rs->state != rs_connected) {
-@@ -1253,8 +1290,8 @@ static ssize_t rsendv(int socket, const struct iovec *iov, int iovcnt, int flags
+@@ -1253,8 +1302,8 @@ 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)) {
@@ -191,7 +190,7 @@ index e899e8a..bb66503 100644
                        if (ret)
                                break;
                        if (rs->state != rs_connected) {
-@@ -1469,12 +1506,23 @@ static int rs_poll_events(struct pollfd *rfds, struct pollfd *fds, nfds_t nfds)
+@@ -1469,12 +1518,23 @@ static int rs_poll_events(struct pollfd *rfds, struct pollfd *fds, nfds_t nfds)
   */
  int rpoll(struct pollfd *fds, nfds_t nfds, int timeout)
  {