]> git.openfabrics.org - ~shefty/librdmacm.git/commitdiff
refresh (create temporary patch)
authorSean Hefty <sean.hefty@intel.com>
Wed, 18 Jul 2012 00:03:46 +0000 (17:03 -0700)
committerSean Hefty <sean.hefty@intel.com>
Wed, 18 Jul 2012 00:03:46 +0000 (17:03 -0700)
meta
patches/refresh-temp [new file with mode: 0644]

diff --git a/meta b/meta
index efefeddbf8253bd1ff12b7f8097f69e52c0ed733..40ade32cb20902ba28016c993d29a7d46574ee89 100644 (file)
--- a/meta
+++ b/meta
@@ -1,10 +1,11 @@
 Version: 1
-Previous: ff4a62b55a592d05094563e0b863e54a62d792db
-Head: aeb9fdd0ed3b27e1f1201c8c8b88bfb2e428bb12
+Previous: 8f0c235d0f226a5806bd075052c37acfcc02eba3
+Head: 636f761cf2248c924efcb272271fa8e294190e1d
 Applied:
   transpose: 84e0beee0d2d3c217cd9703b9e438d25856cacb6
   fork: c86c2d8e7d556ae2d94b3181939473a50337e550
   rstream-fork: aeb9fdd0ed3b27e1f1201c8c8b88bfb2e428bb12
+  refresh-temp: 636f761cf2248c924efcb272271fa8e294190e1d
 Unapplied:
   waitall-buggy: c49c6b56c55385774065f5aa2704078e6ae0ceb8
   rs-1sge: 8ec392829399dec7ed5c608b8697a482e5faa2de
diff --git a/patches/refresh-temp b/patches/refresh-temp
new file mode 100644 (file)
index 0000000..37fe705
--- /dev/null
@@ -0,0 +1,112 @@
+Bottom: 079d7bbe6129342c62546a42ccf45af677b9160f
+Top:    2204d8d10b55cf98a31f8770863429936247a266
+Author: Sean Hefty <sean.hefty@intel.com>
+Date:   2012-07-17 17:03:46 -0700
+
+Refresh of rstream-fork
+
+---
+
+diff --git a/examples/rstream.c b/examples/rstream.c
+index 48e2771..70bd252 100644
+--- a/examples/rstream.c
++++ b/examples/rstream.c
+@@ -84,6 +84,8 @@ static int verify;
+ static int flags = MSG_DONTWAIT;
+ static int poll_timeout = 0;
+ static int custom;
++static int use_fork;
++static pid_t fork_pid;
+ static enum rs_optimization optimization;
+ static int size_option;
+ static int iterations = 1;
+@@ -463,7 +465,11 @@ static int server_connect(void)
+               perror("raccept");
+       }
+-      set_options(rs);
++      if (use_fork)
++              fork_pid = fork();
++
++      if (!fork_pid)
++              set_options(rs);
+       return ret;
+ }
+@@ -546,7 +552,7 @@ static int run(void)
+               if (ret)
+                       goto free;
+-              for (i = 0; i < TEST_CNT; i++) {
++              for (i = 0; i < TEST_CNT && !fork_pid; i++) {
+                       if (test_size[i].option > size_option)
+                               continue;
+                       init_latency_test(test_size[i].size);
+@@ -555,11 +561,14 @@ static int run(void)
+               rs_shutdown(rs, SHUT_RDWR);
+               rs_close(rs);
++              if (use_fork && !fork_pid)
++                      goto free;
++
+               optimization = opt_bandwidth;
+               ret = dst_addr ? client_connect() : server_connect();
+               if (ret)
+                       goto free;
+-              for (i = 0; i < TEST_CNT; i++) {
++              for (i = 0; i < TEST_CNT && !fork_pid; i++) {
+                       if (test_size[i].option > size_option)
+                               continue;
+                       init_bandwidth_test(test_size[i].size);
+@@ -570,7 +579,8 @@ static int run(void)
+               if (ret)
+                       goto free;
+-              ret = run_test();
++              if (!fork_pid)
++                      ret = run_test();
+       }
+       rs_shutdown(rs, SHUT_RDWR);
+@@ -593,6 +603,10 @@ static int set_test_opt(char *optarg)
+               case 'b':
+                       flags &= ~MSG_DONTWAIT;
+                       break;
++              case 'f':
++                      use_fork = 1;
++                      use_rs = 0;
++                      break;
+               case 'n':
+                       flags |= MSG_DONTWAIT;
+                       break;
+@@ -613,6 +627,9 @@ static int set_test_opt(char *optarg)
+                       flags |= MSG_DONTWAIT;
+               } else if (!strncasecmp("verify", optarg, 6)) {
+                       verify = 1;
++              } else if (!strncasecmp("fork", optarg, 4)) {
++                      use_fork = 1;
++                      use_rs = 0;
+               } else {
+                       return -1;
+               }
+@@ -671,6 +688,7 @@ int main(int argc, char **argv)
+                       printf("\t    s|sockets - use standard tcp/ip sockets\n");
+                       printf("\t    a|async - asynchronous operation (use poll)\n");
+                       printf("\t    b|blocking - use blocking calls\n");
++                      printf("\t    f|fork - fork server processing\n");
+                       printf("\t    n|nonblocking - use nonblocking calls\n");
+                       printf("\t    v|verify - verify data\n");
+                       exit(1);
+diff --git a/man/rstream.1 b/man/rstream.1
+index ea87b95..29aa66b 100644
+--- a/man/rstream.1
++++ b/man/rstream.1
+@@ -48,6 +48,8 @@ a | async - uses asynchronous operation (e.g. select / poll)
+ .P
+ b | blocking - uses blocking calls
+ .P
++f | fork - fork server processing (forces -T s option)
++.P
+ n | nonblocking - uses non-blocking calls
+ .P
+ v | verify - verifies data transfers