[ovs-dev] [PATCH ovn] ovn-controller: Fix inject-pkt command error response.

Han Zhou zhouhan at gmail.com
Mon Aug 5 07:28:54 UTC 2019


From: Han Zhou <hzhou8 at ebay.com>

When using unixctl command inject-packet, it always respond with
failure "server not ready", although the command was actually executed
successfully.

Fixes: 0bd4d85c36ef ("ovn-controller: Initial use of incremental engine - quiet mode.")
Signed-off-by: Han Zhou <hzhou8 at ebay.com>
---
 controller/ovn-controller.c | 12 +++++++-----
 tests/ovn.at                |  2 +-
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/controller/ovn-controller.c b/controller/ovn-controller.c
index ad33d17..9df598f 100644
--- a/controller/ovn-controller.c
+++ b/controller/ovn-controller.c
@@ -2079,12 +2079,14 @@ main(int argc, char *argv[])
                         unixctl_command_reply_error(pending_pkt.conn, error);
                         free(error);
                     } else {
-                        VLOG_DBG("Pending_pkt conn but br_int %p or chassis "
-                                 "%p not ready. run-id: %"PRIu64, br_int,
-                                 chassis, engine_run_id);
-                        unixctl_command_reply_error(pending_pkt.conn,
-                            "ovn-controller not ready.");
+                        unixctl_command_reply(pending_pkt.conn, NULL);
                     }
+                } else {
+                    VLOG_DBG("Pending_pkt conn but br_int %p or chassis "
+                             "%p not ready. run-id: %"PRIu64, br_int,
+                             chassis, engine_run_id);
+                    unixctl_command_reply_error(pending_pkt.conn,
+                        "ovn-controller not ready.");
                 }
                 pending_pkt.conn = NULL;
                 free(pending_pkt.flow_s);
diff --git a/tests/ovn.at b/tests/ovn.at
index e88cffa..b85e549 100644
--- a/tests/ovn.at
+++ b/tests/ovn.at
@@ -3723,7 +3723,7 @@ sleep 1
 packet="inport==\"ls1-lp1\" && eth.src==$ls1_lp1_mac && eth.dst==$rp_ls1_mac &&
         ip4 && ip.ttl==64 && ip4.src==$ls1_lp1_ip && ip4.dst==$ls2_lp1_ip &&
         udp && udp.src==53 && udp.dst==4369"
-as hv1 ovs-appctl -t ovn-controller inject-pkt "$packet"
+AT_CHECK([as hv1 ovs-appctl -t ovn-controller inject-pkt "$packet"])
 
 
 echo "---------NB dump-----"
-- 
2.1.0



More information about the dev mailing list