[TOOLS] fix send_bw test for UD.
[mirror/winof/.git] / tools / perftests / user / write_bw / write_bw.c
index 3bee990..951975c 100644 (file)
@@ -383,7 +383,8 @@ static int pp_connect_ctx(struct pingpong_context *ctx, int port, int my_psn,
 }
 
 static SOCKET pp_open_port(struct pingpong_context *ctx, const char * servername,
-                       int ib_port, int port, struct pingpong_dest **p_rem_dest,struct user_parameters *user_parm)
+                       int ib_port, int port, struct pingpong_dest **p_my_dest,
+                       struct pingpong_dest **p_rem_dest,struct user_parameters *user_parm)
 {
        struct pingpong_dest    *my_dest;
        struct pingpong_dest    *rem_dest;
@@ -434,7 +435,7 @@ static SOCKET pp_open_port(struct pingpong_context *ctx, const char * servername
                my_dest[i].rkey = ctx->rkey;
                my_dest[i].vaddr = (uintptr_t)ctx->buf + ctx->size;
 
-               printf("  local address:  LID %#04x, QPN %#06x, PSN %#06x "
+               printf("  local address:  LID %#04x, QPN %#06x, PSN %#06x, "
                "RKey %#08x VAddr %#016Lx\n",
                my_dest[i].lid, my_dest[i].qpn, my_dest[i].psn,
                my_dest[i].rkey, my_dest[i].vaddr);
@@ -458,6 +459,7 @@ static SOCKET pp_open_port(struct pingpong_context *ctx, const char * servername
                        return INVALID_SOCKET;
        }
        *p_rem_dest = rem_dest;
+       *p_my_dest = my_dest;
        return sockfd;
 }
 
@@ -585,7 +587,7 @@ int run_iter(struct pingpong_context *ctx, struct user_parameters *user_param,
                                }
                                ctx->scnt[index]= ctx->scnt[index]+1;
                                ++scnt;
-//printf("scnt = %d \n",scnt);
+                               PERF_DEBUG("scnt = %d \n",scnt);
                        }
 
                }
@@ -615,7 +617,7 @@ int run_iter(struct pingpong_context *ctx, struct user_parameters *user_param,
                                        /*here the id is the index to the qp num */
                                        ctx->ccnt[(int)wc.wr_id] = ctx->ccnt[(int)wc.wr_id]+1;
                                        ++ccnt;
-//printf("ccnt = %d \n",ccnt);
+                                       PERF_DEBUG("ccnt = %d \n",ccnt);
                                        p_wc_free = p_wc_done;
                                        p_wc_free->p_next = NULL;
                                        p_wc_done = NULL;
@@ -640,7 +642,7 @@ int run_iter(struct pingpong_context *ctx, struct user_parameters *user_param,
 int __cdecl main(int argc, char *argv[])
 {
        struct pingpong_context *ctx;
-       struct pingpong_dest     my_dest;
+       struct pingpong_dest     *my_dest;
        struct pingpong_dest     *rem_dest;
        struct user_parameters  user_param;
        char                            *ib_devname = NULL;
@@ -817,7 +819,7 @@ int __cdecl main(int argc, char *argv[])
        if (!ctx)
                return 1;
 
-       sockfd = pp_open_port(ctx, user_param.servername, ib_port, port,&rem_dest,&user_param);
+       sockfd = pp_open_port(ctx, user_param.servername, ib_port, port,&my_dest,&rem_dest,&user_param);
        if (sockfd == INVALID_SOCKET)
                return 9;
        
@@ -827,7 +829,7 @@ int __cdecl main(int argc, char *argv[])
        /* For half duplex tests, server just waits for client to exit */
        /* use dummy my_dest struct*/
        if (!user_param.servername && !duplex) {
-               pp_server_exch_dest(sockfd, &my_dest,rem_dest);
+               pp_server_exch_dest(sockfd, my_dest,rem_dest);
                send(sockfd, "done", sizeof "done",0);
                closesocket(sockfd);
                return 0;
@@ -863,9 +865,9 @@ int __cdecl main(int argc, char *argv[])
 
        /* use dummy my_dest struct*/
        if (user_param.servername) {
-               pp_client_exch_dest(sockfd, &my_dest,rem_dest);
+               pp_client_exch_dest(sockfd, my_dest,rem_dest);
        } else {
-               pp_server_exch_dest(sockfd, &my_dest,rem_dest);
+               pp_server_exch_dest(sockfd, my_dest,rem_dest);
        }
        send(sockfd, "done", sizeof "done",0);
        closesocket(sockfd);