summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlic121 <lic121@chinatelecom.cn>2022-04-05 10:16:58 +0000
committerIlya Maximets <i.maximets@ovn.org>2022-05-25 21:22:15 +0200
commit5ae081baeb01a7333dc24788af034c99f26428a3 (patch)
treea9a3c17dc25c735f2ac5940bbb3c58b8b14055a0
parent871b8a797dfe2c3bbbcf76b64af60b16a0035f71 (diff)
downloadopenvswitch-5ae081baeb01a7333dc24788af034c99f26428a3.tar.gz
ofproto-dpif: Trigger revalidation if ct tp changes.
Once ct_zone timeout policy changes, revalidator is supposed to be triggered. Fixes: 993cae678bca ("ofproto-dpif: Consume CT_Zone, and CT_Timeout_Policy tables") Signed-off-by: lic121 <lic121@chinatelecom.cn> Acked-by: Eelco Chaudron <echaudro@redhat.com> Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
-rw-r--r--ofproto/ofproto-dpif.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c
index d8189814b..f426ffdc5 100644
--- a/ofproto/ofproto-dpif.c
+++ b/ofproto/ofproto-dpif.c
@@ -5518,6 +5518,7 @@ ct_set_zone_timeout_policy(const char *datapath_type, uint16_t zone_id,
ct_timeout_policy_unref(backer, ct_zone->ct_tp);
ct_zone->ct_tp = ct_tp;
ct_tp->ref_count++;
+ backer->need_revalidate = REV_RECONFIGURE;
}
} else {
struct ct_zone *new_ct_zone = ct_zone_alloc(zone_id);
@@ -5525,6 +5526,7 @@ ct_set_zone_timeout_policy(const char *datapath_type, uint16_t zone_id,
cmap_insert(&backer->ct_zones, &new_ct_zone->node,
hash_int(zone_id, 0));
ct_tp->ref_count++;
+ backer->need_revalidate = REV_RECONFIGURE;
}
}
@@ -5541,6 +5543,7 @@ ct_del_zone_timeout_policy(const char *datapath_type, uint16_t zone_id)
if (ct_zone) {
ct_timeout_policy_unref(backer, ct_zone->ct_tp);
ct_zone_remove_and_destroy(backer, ct_zone);
+ backer->need_revalidate = REV_RECONFIGURE;
}
}