On 6/21/23 20:43, Sayali Naval (sanaval) via dev wrote:
> A gentle reminder to take a look at this patch.

Hi.  Sorry for a late reply.  But this patch came in strangely formatted,
so it wasn't recognized as a patch by any of our systems.

The patch has extra spacing after every line that makes it not readable
by automated tools and hence not applicable.

Could you try re-sending it?  Maybe re-configure your or use a different
mail client for that, e.g. git send-email.

There are some hints in the contribution guide:
  
https://docs.openvswitch.org/en/latest/internals/contributing/submitting-patches/

And some hints on mail client configuration from a kernel guide:
  https://static.lwn.net/kerneldoc/process/email-clients.html


For example, here is how your patch looks like:
  https://mail.openvswitch.org/pipermail/ovs-dev/2023-May/405130.html

And here is an example on how the patch formatting should look like:
  https://mail.openvswitch.org/pipermail/ovs-dev/2023-June/405786.html

Best regards, Ilya Maximets.

> 
> Thanks,
> Sayali Naval
> ________________________________
> From: Sayali Naval (sanaval)
> Sent: Wednesday, May 31, 2023 11:02 AM
> To: [email protected] <[email protected]>
> Subject: [ovs-dev] [PATCH v1] bridge ovs-vsctl Bridge IPFIX 
> enable_input_sampling, enable_ouput_sampling fix unexpected values
> 
> 
> As per the Open vSwitch Manual 
> (http://www.openvswitch.org/support/dist-docs/ovs-vsctl.8.txt) the Bridge 
> IPFIX parameters can be passed as follows:
> 
> 
> ovs-vsctl -- set Bridge br0 ipfix=@i \
> 
>               --  --id=@i  create  IPFIX targets=\"192.168.0.34:4739\" obs_do‐
> 
>               main_id=123       obs_point_id=456       cache_active_timeout=60
> 
>               cache_max_flows=13 \
> 
>               other_config:enable-input-sampling=false \
> 
>               other_config:enable-output-sampling=false
> 
> 
> where the default values are:
> 
> enable_input_sampling: true
> 
> enable_output_sampling: true
> 
> 
> But in the existing code 
> https://github.com/openvswitch/ovs/blob/master/vswitchd/bridge.c#L1563-L1567, 
> these 2 parameters take up unexpected values in some scenarios.
> 
> 
> 
>         be_opts.enable_input_sampling = !smap_get_bool(&be_cfg->other_config,
> 
>                                               "enable-input-sampling", false);
> 
> 
>         be_opts.enable_output_sampling = !smap_get_bool(&be_cfg->other_config,
> 
>                                               "enable-output-sampling", 
> false);
> 
> 
> Here, the function smap_get_bool is being used with a negation.
> 
> 
> smap_get_bool is defined as below:
> 
> (https://github.com/openvswitch/ovs/blob/master/lib/smap.c#L220-L232)
> 
> 
> /* Gets the value associated with 'key' in 'smap' and converts it to a 
> boolean.
> 
>  * If 'key' is not in 'smap', or its value is neither "true" nor "false",
> 
>  * returns 'def'. */
> 
> bool
> 
> smap_get_bool(const struct smap *smap, const char *key, bool def)
> 
> {
> 
>     const char *value = smap_get_def(smap, key, "");
> 
>     if (def) {
> 
>         return strcasecmp("false", value) != 0;
> 
>     } else {
> 
>         return !strcasecmp("true", value);
> 
>     }
> 
> }
> 
> 
> This returns expected values for the default case (since the above code will 
> negate “false” we get from smap_get bool function and return the value 
> “true”) but unexpected values for the case where the sampling value is passed 
> through the CLI.
> 
> For example, if we pass "true" for other_config:enable-input-sampling in the 
> CLI, the above code will negate the “true” value we get from the smap_bool 
> function and return the value “false”. Same would be the case for 
> enable_output_sampling.
> 
> 
> Signed-off-by: Sayali Naval <[email protected]>
> 
> ---
> 
> [bridge-ipfix-fix 277b3baae] Fix values for enable_input_sampling & 
> enable_ouput_sampling
> 
>  Date: Thu May 25 10:32:43 2023 -0700
> 
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> 
> diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c
> 
> index f5dc59ad0..b972d55d0 100644
> 
> --- a/vswitchd/bridge.c
> 
> +++ b/vswitchd/bridge.c
> 
> @@ -1560,11 +1560,11 @@ bridge_configure_ipfix(struct bridge *br)
> 
>          be_opts.enable_tunnel_sampling = smap_get_bool(&be_cfg->other_config,
> 
>                                               "enable-tunnel-sampling", true);
> 
> 
> 
> -        be_opts.enable_input_sampling = !smap_get_bool(&be_cfg->other_config,
> 
> -                                              "enable-input-sampling", 
> false);
> 
> +        be_opts.enable_input_sampling = smap_get_bool(&be_cfg->other_config,
> 
> +                                              "enable-input-sampling", true);
> 
> 
> 
> -        be_opts.enable_output_sampling = 
> !smap_get_bool(&be_cfg->other_config,
> 
> -                                              "enable-output-sampling", 
> false);
> 
> +        be_opts.enable_output_sampling = smap_get_bool(&be_cfg->other_config,
> 
> +                                              "enable-output-sampling", 
> true);
> 
> 
> 
>          virtual_obs_id = smap_get(&be_cfg->other_config, "virtual_obs_id");
> 
>          be_opts.virtual_obs_id = nullable_xstrdup(virtual_obs_id);
> 
> --
> 
> 
> 
> _______________________________________________
> dev mailing list
> [email protected]
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
> 

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to