[ovs-dev] [PATCH ovn v2] ovn-northd.c: Don't use DPG for MC_UNKNOWN related lflows.

Han Zhou hzhou at ovn.org
Sat May 8 15:08:02 UTC 2021


In commit b468c2c1 it avoided using DPG for multicast related lflows, but
commit dd94f126 update the MC_UNKNOWN related lflows with DPG used again
by mistake. This patch fixes it to avoid problems when a lflow using
MC_UNKNOWN is monitored by a ovn-controller before the related mc-group
is monitored, which could cause ovn-controller problem due to an
incomplete dependency handling in I-P.

This change can be removed (and applying DPG for all the other mc-group
related lflows) when the I-P dependency handling problem is fixed.

This change didn't address the ovn-northd-ddlog part because commit
b468c2c1 didn't update ovn-northd-ddlog either. To be consistent, the
ddlog change will be added together for all mc-group related flows.

Fixes: dd94f1266c ("northd: MAC learning: Add logical flows for fdb.")
Cc: Numan Siddique <numans at ovn.org>
Acked-by: Dumitru Ceara <dceara at redhat.com>
Signed-off-by: Han Zhou <hzhou at ovn.org>
---
v1 -> v2: Addresses Dumitru's comment about commit msg with corrected "Fixes"
          tag and reworded the message.

 northd/ovn-northd.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/northd/ovn-northd.c b/northd/ovn-northd.c
index 1d4c5b67b..cccb9f3ed 100644
--- a/northd/ovn-northd.c
+++ b/northd/ovn-northd.c
@@ -6767,9 +6767,9 @@ build_lswitch_flows(struct hmap *datapaths, struct hmap *lflows)
                       "outport = get_fdb(eth.dst); next;");
 
         if (od->has_unknown) {
-            ovn_lflow_add(lflows, od, S_SWITCH_IN_L2_UNKNOWN, 50,
-                          "outport == \"none\"",
-                          "outport = \""MC_UNKNOWN"\"; output;");
+            ovn_lflow_add_unique(lflows, od, S_SWITCH_IN_L2_UNKNOWN, 50,
+                                 "outport == \"none\"",
+                                 "outport = \""MC_UNKNOWN "\"; output;");
         } else {
             ovn_lflow_add(lflows, od, S_SWITCH_IN_L2_UNKNOWN, 50,
                           "outport == \"none\"", "drop;");
-- 
2.30.2



More information about the dev mailing list