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:14 +0200
commitf04952ce07a192a30b8c1787c3a0915024f728be (patch)
treeb06dba86ee16c068c4c015ad357f8052b06c2aee
parentc7527d96d12ae157c971f2445a3dc686a6dc0ebe (diff)
downloadopenvswitch-f04952ce07a192a30b8c1787c3a0915024f728be.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 6491801a6..13122f83c 100644
--- a/ofproto/ofproto-dpif.c
+++ b/ofproto/ofproto-dpif.c
@@ -5556,6 +5556,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);
@@ -5563,6 +5564,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;
}
}
@@ -5579,6 +5581,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;
}
}