[ovs-dev] [PATCH] Fix the segfault seen in ovn-controller when running tests

nusiddiq at redhat.com nusiddiq at redhat.com
Mon Sep 9 10:02:45 UTC 2019


From: Numan Siddique <nusiddiq at redhat.com>

The test case - "116: ovn -- 2 HVs, 2 lports/HV, localnet ports, DVR N-S Ping"
is failing with the segfault in ovn-controller occationally.

This patch fixes it.

backtrace
------
Program terminated with signal SIGSEGV, Segmentation fault.
0x0000000000422414 in put_remote_port_redirect_bridged (...)
    at /usr/include/bits/byteswap.h:52
52	  return __builtin_bswap32 (__bsx);
[Current thread is 1 (Thread 0x7f985fbe04c0 (LWP 18625))]
------

Fixes: 03493b33c073("OVN: Vlan backed DVR N-S, redirect packet via localnet port")
CC: Ankur Sharma <ankur.sharma at nutanix.com>
Signed-off-by: Numan Siddique <nusiddiq at redhat.com>
---
 controller/physical.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/controller/physical.c b/controller/physical.c
index c818646f0..f28c5f078 100644
--- a/controller/physical.c
+++ b/controller/physical.c
@@ -272,6 +272,9 @@ put_remote_port_redirect_bridged(const struct
         const struct sbrec_port_binding *ls_localnet_port;
 
         ls_localnet_port = get_localnet_port(local_datapaths, ls_dp_key);
+        if (!ls_localnet_port) {
+            return;
+        }
 
         src_mac = ofpact_put_SET_ETH_SRC(ofpacts_p);
         src_mac->mac = binding_mac;
-- 
2.21.0



More information about the dev mailing list