[ovs-dev] [PATCH ovn 1/2] northd: allow having VXLAN encaps in ovn-ic enabled setup

Numan Siddique numans at ovn.org
Mon Nov 29 18:18:14 UTC 2021


On Tue, Nov 23, 2021 at 12:08 PM Vladislav Odintsov <odivlad at gmail.com> wrote:
>
> In ovn-ic enabled setups, which also use VXLAN encapsulation
> (for instance, for VTEP-switches) interconnected transit switches
> (datapaths) were not configured after the patch from "Fixes" tag.
> This was due to the fact that ovn-ic utilises tunnel key for
> transit switches > OVN_VXLAN_MIN_MULTICAST.
>
> This patch allows having such setup.
>
> Fixes: fd44d7595 (Enforce datapath and port key constraints in vxlan mode)
> Signed-off-by: Vladislav Odintsov <odivlad at gmail.com>

Thanks.  I applied this patch to the main branch and backported to branch-21.09.

Regards
Numan

> ---
>  northd/northd.c | 4 +++-
>  tests/ovn-ic.at | 3 +++
>  2 files changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/northd/northd.c b/northd/northd.c
> index 2b7dd5980..0145a4943 100644
> --- a/northd/northd.c
> +++ b/northd/northd.c
> @@ -1439,7 +1439,9 @@ ovn_datapath_assign_requested_tnl_id(struct northd_input *input_data,
>                                         : &od->nbr->options);
>      uint32_t tunnel_key = smap_get_int(other_config, "requested-tnl-key", 0);
>      if (tunnel_key) {
> -        if (is_vxlan_mode(input_data) && tunnel_key >= 1 << 12) {
> +        const char *interconn_ts = smap_get(other_config, "interconn-ts");
> +        if (!interconn_ts && is_vxlan_mode(input_data) &&
> +            tunnel_key >= 1 << 12) {
>              static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 1);
>              VLOG_WARN_RL(&rl, "Tunnel key %"PRIu32" for datapath %s is "
>                           "incompatible with VXLAN", tunnel_key,
> diff --git a/tests/ovn-ic.at b/tests/ovn-ic.at
> index a189a8fed..05bd3e9a6 100644
> --- a/tests/ovn-ic.at
> +++ b/tests/ovn-ic.at
> @@ -38,6 +38,9 @@ AT_SETUP([ovn-ic -- transit switch handling])
>  ovn_init_ic_db
>  ovn_start az1
>
> +# create fake chassis with vxlan encap to enforce requested tunnel key checks
> +ovn-sbctl chassis-add fakechassis vxlan 192.168.0.2
> +
>  AT_CHECK([ovn-ic-nbctl ts-add ts1])
>  AT_CHECK([ovn-ic-nbctl ts-add ts2])
>
> --
> 2.30.0
>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>


More information about the dev mailing list