ovs-ofctl: Make "barrier" output reproducible for testing.
authorBen Pfaff <blp@nicira.com>
Wed, 7 Mar 2012 22:46:14 +0000 (14:46 -0800)
committerBen Pfaff <blp@nicira.com>
Wed, 7 Mar 2012 22:47:00 +0000 (14:47 -0800)
The "ofproto - asynchronous message control" test had a race in which
the "send: OFPT_BARRIER_REQUEST" message could get printed in different
places because there was nothing to ensure that messages from the switch
were printed before messages sent to the switch, even though the actual
ordering of the messages was predictable.  This fixes the problem by not
printing a message at all when the barrier request is sent.

Bug #10049.
Signed-off-by: Ben Pfaff <blp@nicira.com>
tests/ofproto.at
utilities/ovs-ofctl.c

index b39de70..f912f31 100644 (file)
@@ -485,8 +485,7 @@ priority:0,tunnel:0,in_port:0000,tci(0) mac(00:26:b9:8c:b0:f9->00:25:83:df:b4:00
     AT_FAIL_IF([test X"$1" != X])
 
     ovs-appctl -t ovs-ofctl ofctl/barrier
-    echo >>expout "send: OFPT_BARRIER_REQUEST:
-OFPT_BARRIER_REPLY:"
+    echo >>expout "OFPT_BARRIER_REPLY:"
 
     AT_CHECK(
       [[sed '
index fcbbf21..74a86c1 100644 (file)
@@ -925,9 +925,6 @@ ofctl_barrier(struct unixctl_conn *conn, int argc OVS_UNUSED,
     }
 
     msg = ofputil_encode_barrier_request();
-    fprintf(stderr, "send: ");
-    ofp_print(stderr, msg->data, msg->size, verbosity);
-
     error = vconn_send_block(aux->vconn, msg);
     if (error) {
         ofpbuf_delete(msg);