Version: 1
-Previous: 13d8ee842db3e83618aea6266bd628760400b4f6
+Previous: 8abc3aea7db8fd13c4e08a5e213b3bceaa420d87
Head: 992a8c5abcb0199fd6214fd31b6695573ccb5bf5
Applied:
reuseaddr: 5ce7d9c48d082fd1959918e9134f4bdd85c402d9
rs-nodelay: 7601a5adca71f10ad1cb63292c769b7b9a35dd08
rs-async-nonblock: 992a8c5abcb0199fd6214fd31b6695573ccb5bf5
Unapplied:
- comp_locks: b89aab130b4619806557e11e6b9c10964f00743f
preload: 5dfe7abc07064485c5100e04e5412279244c2bc3
Hidden:
+++ /dev/null
-Bottom: b2e4cd7d670a626fa22b05cff6a1dccc973e9f0d
-Top: 45f68867f729e3cb78043b0ed09f9ef47ece464f
-Author: Sean Hefty <sean.hefty@intel.com>
-Date: 2012-05-09 14:54:17 -0700
-
-compare fastlock versus mutex
-
-
----
-
-diff --git a/examples/rstream.c b/examples/rstream.c
-index 8aa089d..8c4cfdc 100644
---- a/examples/rstream.c
-+++ b/examples/rstream.c
-@@ -44,6 +44,9 @@
-
- #include <rdma/rdma_cma.h>
- #include <rdma/rsocket.h>
-+#include "../src/cma.h"
-+
-+static int test_mutex;
-
- static int test_size[] = {
- 64,
-@@ -276,12 +279,31 @@ static int sync_test(int rs)
- static int run_test(int rs)
- {
- int ret, i, t;
-+ fastlock_t fl;
-+ pthread_mutex_t mut;
-
-+ fastlock_init(&fl);
-+ pthread_mutex_init(&mut, NULL);
- ret = sync_test(rs);
- if (ret)
- goto out;
-
-+ printf("test mutex %s\n", test_mutex == 1 ? "fastlock" : "mutex/none");
- gettimeofday(&start, NULL);
-+ if (test_mutex) {
-+ if (test_mutex == 1) {
-+ for (i = 0; i < 2000000000; i++) {
-+ fastlock_acquire(&fl);
-+ fastlock_release(&fl);
-+ }
-+ } else {
-+ for (i = 0; i < 2000000000; i++) {
-+ pthread_mutex_lock(&mut);
-+ pthread_mutex_unlock(&mut);
-+ }
-+ }
-+ }
-+
- for (i = 0; i < iterations; i++) {
- for (t = 0; t < transfer_count; t++) {
- ret = dst_addr ? send_xfer(rs, transfer_size) :
-@@ -302,6 +324,8 @@ static int run_test(int rs)
- ret = 0;
-
- out:
-+ fastlock_destroy(&fl);
-+ pthread_mutex_destroy(&mut);
- return ret;
- }
-
-@@ -497,6 +521,9 @@ static int set_test_opt(char *optarg)
- case 'v':
- verify = 1;
- break;
-+ case 'm':
-+ test_mutex++;
-+ break;
- default:
- return -1;
- }