]> git.openfabrics.org - ~shefty/librdmacm.git/commitdiff
Refresh of cmtime-bind
authorSean Hefty <sean.hefty@intel.com>
Thu, 22 Aug 2013 18:42:27 +0000 (11:42 -0700)
committerSean Hefty <sean.hefty@intel.com>
Thu, 22 Aug 2013 18:42:27 +0000 (11:42 -0700)
examples/cmtime.c

index f97ab9e37afb008c00895fb1d15e184d8d9f86df..5b416af6ec59a497683bedf771e8419c1b5902a4 100644 (file)
@@ -54,6 +54,7 @@ static char *src_addr;
 
 enum step {
        STEP_CREATE_ID,
+       STEP_BIND,
        STEP_RESOLVE_ADDR,
        STEP_RESOLVE_ROUTE,
        STEP_CREATE_QP,
@@ -65,6 +66,7 @@ enum step {
 
 static char *step_str[] = {
        "create id",
+       "bind addr",
        "resolve addr",
        "resolve route",
        "create qp",
@@ -348,6 +350,22 @@ static int run_client(void)
        conn_param.private_data = rai->ai_connect;
        conn_param.private_data_len = rai->ai_connect_len;
 
+       if (src_addr) {
+               printf("binding source address");
+               start_time(STEP_BIND);
+               for (i = 0; i < connections; i++) {
+                       start_perf(&nodes[i], STEP_BIND);
+                       ret = rdma_bind_addr(nodes[i].id, rai->ai_src_addr);
+                       if (ret) {
+                               perror("failure bind addr");
+                               nodes[i].error = 1;
+                               continue;
+                       }
+                       stop_perf(&nodes[i], STEP_RESOLVE_ADDR);
+               }
+               end_time(STEP_BIND);
+       }
+
        printf("resolving address\n");
        start_time(STEP_RESOLVE_ADDR);
        for (i = 0; i < connections; i++) {