diff mbox series

[ovs-dev] Fixes: 1b3557f53dbc ("vswitchd, ofproto-dpif: Propagate the CT limit from database.")

Message ID CAO-8HToJe4UPmXdNec-ZbwzUSkeOQV7-Mp9M3gYM_HFA9Zf9FQ@mail.gmail.com
State Changes Requested
Headers show
Series [ovs-dev] Fixes: 1b3557f53dbc ("vswitchd, ofproto-dpif: Propagate the CT limit from database.") | expand

Checks

Context Check Description
ovsrobot/apply-robot success apply and check: success
ovsrobot/intel-ovs-compilation fail test: fail
ovsrobot/github-robot-_Build_and_Test success github build: passed

Commit Message

Chandler Wu May 18, 2024, 3:36 p.m. UTC
From 747d3c040d29e5abf2ddc45bd8fd4e904cfb53b3 Mon Sep 17 00:00:00 2001
From: chandlerwu <chandler0149@gmail.com>
Date: Mon, 6 May 2024 11:58:21 +0800
Fixes: 1b3557f53dbc ("vswitchd, ofproto-dpif: Propagate the
 CT limit from database.")

If we create a zone for the first time, the new tp_cfg will be
copied to the zone, see `ct_zone_alloc`. Then `update_timeout_policy``
will find the new copied tp== tp_cfg, so
``ofproto_ct_set_zone_timeout_policy`
will not be called.

Signed-off-by: chandlerwu <chandler0149@gmail.com>
---
 vswitchd/bridge.c | 4 ++++
 1 file changed, 4 insertions(+)


         struct simap new_tp = SIMAP_INITIALIZER(&new_tp);
@@ -780,6 +783,7 @@ ct_zones_reconfigure(struct datapath *dp, struct
ovsrec_datapath *dp_cfg)
             }
         }

+    post_update:;
         int64_t desired_limit = zone_cfg->limit ? *zone_cfg->limit : -1;
         if (ct_zone->limit != desired_limit) {
             ofproto_ct_zone_limit_update(dp->type, zone_id,
zone_cfg->limit);

Comments

Ilya Maximets May 20, 2024, 9:18 p.m. UTC | #1
On 5/18/24 17:36, Chandler Wu wrote:
> From 747d3c040d29e5abf2ddc45bd8fd4e904cfb53b3 Mon Sep 17 00:00:00 2001
> From: chandlerwu <chandler0149@gmail.com <mailto:chandler0149@gmail.com>>
> Date: Mon, 6 May 2024 11:58:21 +0800
> Fixes: 1b3557f53dbc ("vswitchd, ofproto-dpif: Propagate the
>  CT limit from database.")

For some reason this tag became a Subject line, which is a little strange.
The Fixes tag should be placed at the end of the commit message right above
the Signed-off-by tag.

The subject line should look something like this:

Subject: [PATCH v2] bridge: Fix ct timeout policy when creating a new zone.

Consider using 'git send-email' command for sending patches:
  https://www.git-scm.com/docs/git-send-email/
It will handle proper formatting for you as long as you have a well-formatted
commit message.

The following documentation page also contains a few notes about patch
formatting and different tags:
  https://docs.openvswitch.org/en/latest/internals/contributing/submitting-patches/

> 
> If we create a zone for the first time, the new tp_cfg will be
> copied to the zone, see `ct_zone_alloc`. Then `update_timeout_policy``
> will find the new copied tp== tp_cfg, so ``ofproto_ct_set_zone_timeout_policy`
> will not be called.

As I mentioned in reply to v1, I'd still prefer if we just removed the
get_timeout_policy_from_ovsrec() call from ct_zone_alloc().

Best regards, Ilya Maximets.

> 
> Signed-off-by: chandlerwu <chandler0149@gmail.com>
> ---
>  vswitchd/bridge.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c
> index 95a65fcdc..2c8362a35 100644
> --- a/vswitchd/bridge.c
> +++ b/vswitchd/bridge.c
> @@ -766,6 +766,9 @@ ct_zones_reconfigure(struct datapath *dp, struct ovsrec_datapath *dp_cfg)
>          if (!ct_zone) {
>              ct_zone = ct_zone_alloc(zone_id, tp_cfg);
>              hmap_insert(&dp->ct_zones, &ct_zone->node, hash_int(zone_id, 0));
> +            ofproto_ct_set_zone_timeout_policy(dp->type, ct_zone->zone_id,
> +                                               &ct_zone->tp);
> +            goto post_update;
>          }
>  
>          struct simap new_tp = SIMAP_INITIALIZER(&new_tp);
> @@ -780,6 +783,7 @@ ct_zones_reconfigure(struct datapath *dp, struct ovsrec_datapath *dp_cfg)
>              }
>          }
>  
> +    post_update:;
>          int64_t desired_limit = zone_cfg->limit ? *zone_cfg->limit : -1;
>          if (ct_zone->limit != desired_limit) {
>              ofproto_ct_zone_limit_update(dp->type, zone_id, zone_cfg->limit);
> -- 
> 2.39.2
>
diff mbox series

Patch

diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c
index 95a65fcdc..2c8362a35 100644
--- a/vswitchd/bridge.c
+++ b/vswitchd/bridge.c
@@ -766,6 +766,9 @@  ct_zones_reconfigure(struct datapath *dp, struct
ovsrec_datapath *dp_cfg)
         if (!ct_zone) {
             ct_zone = ct_zone_alloc(zone_id, tp_cfg);
             hmap_insert(&dp->ct_zones, &ct_zone->node, hash_int(zone_id,
0));
+            ofproto_ct_set_zone_timeout_policy(dp->type, ct_zone->zone_id,
+                                               &ct_zone->tp);
+            goto post_update;
         }