On Mon, Mar 31, 2025 at 4:07 PM Ilya Maximets <i.maxim...@ovn.org> wrote:
> STT encapsulation type was deprecated in OVN 25.03 and is no longer > supported in OVS since commit: > > 19b89416203f ("tunnels: Remove support for deprecated STT and LISP.") > > Remove support in OVN as well. > > OVS submodule is moved beyond the corresponding commit because we must > have the flake8 fix for the F824 check, otherwise CI will fail. > > Note: This commit makes backward incompatible change in the Southbound > DB schema by removing support for 'stt' from the encapsulation type > column. Users must migrate to other encapsulation types before > attempting upgrade to the future OVN 25.09. Corresponding warning is > added to the NEWS file. > > Signed-off-by: Ilya Maximets <i.maxim...@ovn.org> > --- > Documentation/faq/general.rst | 12 +++----- > Documentation/howto/docker.rst | 11 +++----- > Documentation/howto/firewalld.rst | 2 +- > Documentation/topics/high-availability.rst | 2 +- > Documentation/tutorials/ovn-openstack.rst | 2 +- > NEWS | 6 ++++ > controller/chassis.c | 2 -- > controller/local_data.c | 5 +--- > controller/ovn-controller.8.xml | 6 +--- > controller/physical.c | 21 ++------------ > include/ovn/logical-fields.h | 2 +- > lib/ovn-util.c | 2 -- > lib/ovn-util.h | 5 +--- > ovn-architecture.7.xml | 32 ++++++---------------- > ovn-ic-sb.ovsschema | 6 ++-- > ovn-ic-sb.xml | 4 +-- > ovn-nb.xml | 2 +- > ovn-sb.ovsschema | 6 ++-- > ovn-sb.xml | 12 ++++---- > ovs | 2 +- > tests/ovn-controller.at | 10 +------ > tests/ovn-ic.at | 6 ++-- > tests/ovn-sbctl.at | 14 ++++------ > tests/ovn.at | 1 - > tests/system-kmod-macros.at | 2 +- > 25 files changed, 56 insertions(+), 119 deletions(-) > > diff --git a/Documentation/faq/general.rst b/Documentation/faq/general.rst > index 63f5c4cbe..c2386e7ad 100644 > --- a/Documentation/faq/general.rst > +++ b/Documentation/faq/general.rst > @@ -49,7 +49,7 @@ Q: How can I try OVN? > various Linux distributions are available on many platforms, > including: > Debian, Ubuntu, Fedora. > > -Q: Why does OVN use STT and Geneve instead of VLANs or VXLAN (or GRE)? > +Q: Why does OVN use Geneve instead of VLANs or VXLAN (or GRE)? > > A: OVN implements a fairly sophisticated packet processing pipeline in > "logical datapaths" that can implement switching or routing > functionality. > @@ -77,20 +77,16 @@ Q: Why does OVN use STT and Geneve instead of VLANs or > VXLAN (or GRE)? > metadata must pass across the physical network: > > * Logical datapath ID, a 24-bit identifier. In Geneve, OVN uses the > VNI to > - hold the logical datapath ID; in STT, OVN uses 24 bits of STT's > 64-bit > - context ID. > + hold the logical datapath ID. > > * Logical ingress port, a 15-bit identifier. In Geneve, OVN uses an > option > - to hold the logical ingress port; in STT, 15 bits of the context ID. > + to hold the logical ingress port. > > * Logical egress port, a 16-bit identifier. In Geneve, OVN uses an > option > - to hold the logical egress port; in STT, 16 bits of the context ID. > + to hold the logical egress port. > > See ``ovn-architecture(7)``, under "Tunnel Encapsulations", for > details. > > - Note: Support for STT tunnels is deprecated and will be removed in OVN > - 25.09 release. > - > Together, these metadata require 24 + 15 + 16 = 55 bits. GRE > provides 32 > bits, VXLAN provides 24, and VLAN only provides 12. Most notably, if > logical egress pipelines do not match on the logical ingress port, > thereby > diff --git a/Documentation/howto/docker.rst > b/Documentation/howto/docker.rst > index 15bf07c94..1ada1fa2c 100644 > --- a/Documentation/howto/docker.rst > +++ b/Documentation/howto/docker.rst > @@ -117,13 +117,10 @@ The "overlay" mode > > ``$ENCAP_TYPE`` > is the type of tunnel that you would like to use for overlay > networking. > - The options are ``geneve`` or ``stt``. Your kernel must have support > for > - your chosen ``$ENCAP_TYPE``. Both ``geneve`` and ``stt`` are part of > the > - Open vSwitch kernel module that is compiled from this repo. If you > use the > - Open vSwitch kernel module from upstream Linux, you will need a > minimum > - kernel version of 3.18 for ``geneve``. There is no ``stt`` support in > - upstream Linux. You can verify whether you have the support in your > kernel > - as follows:: > + The options are ``geneve`` or ``vxlan``. Your kernel must have > support for > + your chosen ``$ENCAP_TYPE``. You will need a minimum Linux kernel > version > + of 3.18 for ``geneve``. You can verify whether you have the support > in > + your kernel as follows:: > > $ lsmod | grep $ENCAP_TYPE > > diff --git a/Documentation/howto/firewalld.rst > b/Documentation/howto/firewalld.rst > index 27faebeea..9487d1074 100644 > --- a/Documentation/howto/firewalld.rst > +++ b/Documentation/howto/firewalld.rst > @@ -91,7 +91,7 @@ time the firewalld service restarts. > The ovn-host-firewall-service only opens port 6081. This is because the > default protocol for OVN tunnels is geneve. If you are using a different > encapsulation protocol, you will need to modify the XML service file to > open > -the appropriate port(s). For VXLAN, open port 4789. For STT, open port > 7471. > +the appropriate port(s). For VXLAN, open port 4789. > > Recommendations > --------------- > diff --git a/Documentation/topics/high-availability.rst > b/Documentation/topics/high-availability.rst > index e85a1cd04..56c1b03e9 100644 > --- a/Documentation/topics/high-availability.rst > +++ b/Documentation/topics/high-availability.rst > @@ -77,7 +77,7 @@ Basic Architecture > > In an OVN deployment, the set of hypervisors and network elements > operating > under the guidance of ovn-northd are in what's called "logical space". > These > -servers use VXLAN, STT, or Geneve to communicate, oblivious to the > details of > +servers use VXLAN or Geneve to communicate, oblivious to the details of > the underlying physical network. When these systems need to communicate > with > legacy networks, traffic must be routed through a Gateway which > translates from > OVN controlled tunnel traffic, to raw physical network traffic. > diff --git a/Documentation/tutorials/ovn-openstack.rst > b/Documentation/tutorials/ovn-openstack.rst > index 557d6284f..93341d58c 100644 > --- a/Documentation/tutorials/ovn-openstack.rst > +++ b/Documentation/tutorials/ovn-openstack.rst > @@ -1946,7 +1946,7 @@ explore some of these directions: > > * Adding more than one hypervisor ("compute node", in OpenStack > parlance). OVN connects compute nodes by tunneling packets with the > - STT or Geneve protocols. OVN scales to 1000 compute nodes or more, > + Geneve protocol. OVN scales to 1000 compute nodes or more, > but two compute nodes demonstrate the principle. All of the tools > and techniques we demonstrated also work with multiple compute > nodes. > diff --git a/NEWS b/NEWS > index 656176d20..edb3ded0d 100644 > --- a/NEWS > +++ b/NEWS > @@ -1,5 +1,11 @@ > Post v25.03.0 > ------------- > + - STT tunnels are no longer supported in ovn-encap-type. > + ** WARNING ** Existing setups must be fully reconfigured to use > Geneve > + or VxLAN before upgrading. To avoid potential database conversion > issues > + all OVN databases should be manually compacted after the > reconfiguration. > + For instructions see: > + > https://docs.openvswitch.org/en/latest/ref/ovsdb.7/#compacting-databases > - Added support for "ovn-cleanup-on-exit" config option in Open_vSwitch > external-ids, this option allows to specify if ovn-controller should > perform cleanup when exiting. The "--restart" exit always has > priority > diff --git a/controller/chassis.c b/controller/chassis.c > index aa5980d92..c28a26a97 100644 > --- a/controller/chassis.c > +++ b/controller/chassis.c > @@ -253,8 +253,6 @@ chassis_parse_ovs_encap_type(const char *encap_type, > > if (!tun_type) { > VLOG_INFO_RL(&rl, "Unknown tunnel type: %s", type); > - } else if (tun_type == STT) { > - VLOG_WARN_RL(&rl, "STT encapsulation type is deprecated"); > } > } > } > diff --git a/controller/local_data.c b/controller/local_data.c > index 5383f49cf..9c6974ce7 100644 > --- a/controller/local_data.c > +++ b/controller/local_data.c > @@ -482,8 +482,6 @@ local_nonvif_data_run(const struct ovsrec_bridge > *br_int, > enum chassis_tunnel_type tunnel_type; > if (!strcmp(iface_rec->type, "geneve")) { > tunnel_type = GENEVE; > - } else if (!strcmp(iface_rec->type, "stt")) { > - tunnel_type = STT; > } else if (!strcmp(iface_rec->type, "vxlan")) { > tunnel_type = VXLAN; > } else { > @@ -527,8 +525,7 @@ local_nonvif_data_handle_ovs_iface_changes( > OVSREC_INTERFACE_TABLE_FOR_EACH_TRACKED (iface_rec, iface_table) { > if (!strcmp(iface_rec->type, "geneve") || > !strcmp(iface_rec->type, "patch") || > - !strcmp(iface_rec->type, "vxlan") || > - !strcmp(iface_rec->type, "stt")) { > + !strcmp(iface_rec->type, "vxlan")) { > return false; > } > } > diff --git a/controller/ovn-controller.8.xml > b/controller/ovn-controller.8.xml > index 31f790875..ca4df9148 100644 > --- a/controller/ovn-controller.8.xml > +++ b/controller/ovn-controller.8.xml > @@ -166,11 +166,7 @@ > > <p> > Supported tunnel types for connecting hypervisors and gateways > - are <code>geneve</code>, <code>vxlan</code>, and > <code>stt</code>. > - </p> > - > - <p> > - <code>stt</code> tunnel type is deprecated. > + are <code>geneve</code> and <code>vxlan</code>. > </p> > > <p> > diff --git a/controller/physical.c b/controller/physical.c > index a28dfd9ae..ee184ed23 100644 > --- a/controller/physical.c > +++ b/controller/physical.c > @@ -168,10 +168,6 @@ put_encapsulation(enum mf_field_id mff_ovn_geneve, > put_load(datapath->tunnel_key, MFF_TUN_ID, 0, 24, ofpacts); > put_load(outport, mff_ovn_geneve, 0, 32, ofpacts); > put_move(MFF_LOG_INPORT, 0, mff_ovn_geneve, 16, 15, ofpacts); > - } else if (tun->type == STT) { > - put_load(datapath->tunnel_key | ((uint64_t) outport << 24), > - MFF_TUN_ID, 0, 64, ofpacts); > - put_move(MFF_LOG_INPORT, 0, MFF_TUN_ID, 40, 15, ofpacts); > } else if (tun->type == VXLAN) { > uint64_t vni = datapath->tunnel_key; > if (!is_ramp_switch) { > @@ -194,10 +190,6 @@ put_decapsulation(enum mf_field_id mff_ovn_geneve, > put_move(MFF_TUN_ID, 0, MFF_LOG_DATAPATH, 0, 24, ofpacts); > put_move(mff_ovn_geneve, 16, MFF_LOG_INPORT, 0, 15, ofpacts); > put_move(mff_ovn_geneve, 0, MFF_LOG_OUTPORT, 0, 16, ofpacts); > - } else if (tun->type == STT) { > - put_move(MFF_TUN_ID, 40, MFF_LOG_INPORT, 0, 15, ofpacts); > - put_move(MFF_TUN_ID, 24, MFF_LOG_OUTPORT, 0, 16, ofpacts); > - put_move(MFF_TUN_ID, 0, MFF_LOG_DATAPATH, 0, 24, ofpacts); > } else if (tun->type == VXLAN) { > /* Add flows for non-VTEP tunnels. Split VNI into two 12-bit > * sections and use them for datapath and outport IDs. */ > @@ -218,10 +210,6 @@ put_remote_chassis_flood_encap(struct ofpbuf *ofpacts, > put_move(MFF_LOG_DATAPATH, 0, MFF_TUN_ID, 0, 24, ofpacts); > put_load(0, mff_ovn_geneve, 0, 32, ofpacts); > put_move(MFF_LOG_INPORT, 0, mff_ovn_geneve, 16, 15, ofpacts); > - } else if (type == STT) { > - put_move(MFF_LOG_INPORT, 0, MFF_TUN_ID, 40, 15, ofpacts); > - put_load(0, MFF_TUN_ID, 24, 16, ofpacts); > - put_move(MFF_LOG_DATAPATH, 0, MFF_TUN_ID, 0, 24, ofpacts); > } else if (type == VXLAN) { > put_move(MFF_LOG_INPORT, 0, MFF_TUN_ID, 12, 12, ofpacts); > put_move(MFF_LOG_DATAPATH, 0, MFF_TUN_ID, 0, 12, ofpacts); > @@ -245,9 +233,6 @@ match_set_chassis_flood_outport(struct match *match, > memset(&mask.tun_metadata[mf_ovn_geneve->n_bytes - 2], 0xff, 2); > > tun_metadata_set_match(mf_ovn_geneve, &value, &mask, match, NULL); > - } else if (type == STT) { > - /* Outport occupies bits 24-39. */ > - match_set_tun_id_masked(match, 0, htonll(UINT64_C(0xffff) << 24)); > } > } > > @@ -1471,8 +1456,6 @@ get_tunnel_overhead(struct chassis_tunnel const *tun) > enum chassis_tunnel_type type = tun->type; > if (type == GENEVE) { > overhead += GENEVE_TUNNEL_OVERHEAD; > - } else if (type == STT) { > - overhead += STT_TUNNEL_OVERHEAD; > } else if (type == VXLAN) { > overhead += VXLAN_TUNNEL_OVERHEAD; > } else { > @@ -2696,8 +2679,8 @@ physical_run(struct physical_ctx *p_ctx, > * Process packets that arrive from a remote hypervisor (by matching > * on tunnel in_port). */ > > - /* Add flows for Geneve, STT and VXLAN encapsulations. Geneve and STT > - * encapsulations have metadata about the ingress and egress logical > ports. > + /* Add flows for Geneve and VXLAN encapsulations. Geneve > encapsulations > + * have metadata about the ingress and egress logical ports. > * VXLAN encapsulations have metadata about the egress logical port > only. > * We set MFF_LOG_DATAPATH, MFF_LOG_INPORT, and MFF_LOG_OUTPORT from > the > * tunnel key data where possible, then resubmit to table 40 to handle > diff --git a/include/ovn/logical-fields.h b/include/ovn/logical-fields.h > index 196ac9dd8..3f636dc0c 100644 > --- a/include/ovn/logical-fields.h > +++ b/include/ovn/logical-fields.h > @@ -106,7 +106,7 @@ enum mff_log_flags { > > /* Indicate that a packet was received from a ramp switch to > compensate for > * the lack of egress port information available in ramp switch > - * encapsulation. Egress port information is available for Geneve, > STT and > + * encapsulation. Egress port information is available for Geneve and > * regular VXLAN tunnel types. */ > MLF_RCV_FROM_RAMP = (1 << MLF_RCV_FROM_RAMP_BIT), > > diff --git a/lib/ovn-util.c b/lib/ovn-util.c > index c65b36bb5..05877350a 100644 > --- a/lib/ovn-util.c > +++ b/lib/ovn-util.c > @@ -913,8 +913,6 @@ get_tunnel_type(const char *name) > { > if (!strcmp(name, "geneve")) { > return GENEVE; > - } else if (!strcmp(name, "stt")) { > - return STT; > } else if (!strcmp(name, "vxlan")) { > return VXLAN; > } > diff --git a/lib/ovn-util.h b/lib/ovn-util.h > index ce8cc0568..f7f82c365 100644 > --- a/lib/ovn-util.h > +++ b/lib/ovn-util.h > @@ -35,7 +35,6 @@ > #define ETHERNET_OVERHEAD (ETH_HEADER_LEN + ETH_CRC_LENGTH) > > #define GENEVE_TUNNEL_OVERHEAD 38 > -#define STT_TUNNEL_OVERHEAD 18 > #define VXLAN_TUNNEL_OVERHEAD 30 > > struct eth_addr; > @@ -336,9 +335,7 @@ hash_add_in6_addr(uint32_t hash, const struct in6_addr > *addr) > /* Must be a bit-field ordered from most-preferred (higher number) to > * least-preferred (lower number). */ > enum chassis_tunnel_type { > - GENEVE = 1 << 2, > - STT = 1 << 1, /* NOTE: STT support is deprecated and will be > removed > - * in an upcoming release. */ > + GENEVE = 1 << 1, > VXLAN = 1 << 0 > }; > > diff --git a/ovn-architecture.7.xml b/ovn-architecture.7.xml > index d45248af4..7b598b203 100644 > --- a/ovn-architecture.7.xml > +++ b/ovn-architecture.7.xml > @@ -1204,7 +1204,7 @@ > </p> > > <p> > - Geneve and STT tunnels pass this field as part of the tunnel key. > + Geneve tunnels pass this field as part of the tunnel key. > Ramp switch VXLAN tunnels do not explicitly carry a logical input > port, > but since they are used to communicate with gateways that from > OVN's > perspective consist of only a single logical port, so that OVN > can set > @@ -1228,7 +1228,7 @@ > </p> > > <p> > - Geneve, STT and regular VXLAN tunnels pass this field as part of > the > + Geneve and regular VXLAN tunnels pass this field as part of the > tunnel key. Ramp switch VXLAN tunnels do not transmit the logical > output port field, and since they do not carry a logical output > port > field in the tunnel key, when a packet is received from ramp > switch > @@ -2813,7 +2813,7 @@ > <p> > When VXLAN is enabled on any hypervisor in a cluster, datapath and > egress > port identifier ranges are reduced to 12-bits. This is done because > only > - STT and Geneve provide the large space for metadata (over 32 bits per > + Geneve provides the large space for metadata (over 32 bits per > packet). The mode with reduced ranges is called <code>VXLAN > mode</code>. > To accommodate for VXLAN, 24 bits available are split as follows: > </p> > @@ -2868,14 +2868,13 @@ > </p> > <ul> > <li> > - STT and Geneve use randomized UDP or TCP source ports that allows > - efficient distribution among multiple paths in environments that > use ECMP > + Geneve uses randomized UDP or TCP source ports that allows efficient > + distribution among multiple paths in environments that use ECMP > in their underlay. > </li> > > <li> > - NICs are available to offload STT and Geneve encapsulation and > - decapsulation. > + NICs are available to offload Geneve encapsulation and > decapsulation. > </li> > </ul> > > @@ -2899,23 +2898,8 @@ > </diagram> > > <p> > - Support for STT encapsulation is deprecated. While using STT on > setups > - that didn't migrate to Geneve yet, OVN encodes all three pieces of > logical > - metadata in the STT 64-bit tunnel ID as follows, from MSB to LSB: > - </p> > - > - <diagram> > - <header name=""> > - <bits name="reserved" above="9" below="0" width=".5"/> > - <bits name="ingress port" above="15" width=".75"/> > - <bits name="egress port" above="16" width=".75"/> > - <bits name="datapath" above="24" width="1.25"/> > - </header> > - </diagram> > - > - <p> > - For connecting to gateways, in addition to Geneve and STT, OVN > supports > - VXLAN, because only VXLAN support is common on top-of-rack (ToR) > switches. > + For connecting to gateways, in addition to Geneve, OVN supports VXLAN, > + because VXLAN-only support is common on top-of-rack (ToR) switches. > Currently, gateways have a feature set that matches the capabilities > as > defined by the VTEP schema, so fewer bits of metadata are necessary. > In > the future, gateways that do not support encapsulations with large > amounts > diff --git a/ovn-ic-sb.ovsschema b/ovn-ic-sb.ovsschema > index 097d6f370..0269b3b75 100644 > --- a/ovn-ic-sb.ovsschema > +++ b/ovn-ic-sb.ovsschema > @@ -1,7 +1,7 @@ > { > "name": "OVN_IC_Southbound", > - "version": "1.3.0", > - "cksum": "3496599919 7088", > + "version": "2.3.0", > + "cksum": "1259594626 7081", > "tables": { > "IC_SB_Global": { > "columns": { > @@ -47,7 +47,7 @@ > "columns": { > "type": {"type": {"key": { > "type": "string", > - "enum": ["set", ["geneve", "stt", "vxlan"]]}}}, > + "enum": ["set", ["geneve", "vxlan"]]}}}, > "options": {"type": {"key": "string", > "value": "string", > "min": 0, > diff --git a/ovn-ic-sb.xml b/ovn-ic-sb.xml > index 46c77a814..63848088a 100644 > --- a/ovn-ic-sb.xml > +++ b/ovn-ic-sb.xml > @@ -275,8 +275,8 @@ > > <column name="tunnel_key"> > <p> > - A number that represents the logical port in the key (e.g. STT > key or > - Geneve TLV) field carried within tunnel protocol packets. The > key > + A number that represents the logical port in the key (e.g. > Geneve > + TLV) field carried within tunnel protocol packets. The key > can be generated by any <code>ovn-ic</code> but the same key is > shared by all availability zones so that the packets can go > through > the datapath pipelines of different availability zones. > diff --git a/ovn-nb.xml b/ovn-nb.xml > index ff5f2f249..307aed38b 100644 > --- a/ovn-nb.xml > +++ b/ovn-nb.xml > @@ -391,7 +391,7 @@ > northd will run in a <code>VXLAN mode</code>. See man > ovn-architecture(7) <code>Tunnel Encapsulations</code> paragraph > for > more details. In case VXLAN encaps are needed on chassis only to > - support HW VTEP functionality and main encap type is GENEVE or > STT, set > + support HW VTEP functionality and main encap type is GENEVE, set > this option to <code>false</code> to use default > non-<code>VXLAN mode</code> tunnel IDs allocation logic. > Please consider when OVN is running in > <code>OVN-interconnect</code> > diff --git a/ovn-sb.ovsschema b/ovn-sb.ovsschema > index c6058f42c..77c7d95b9 100644 > --- a/ovn-sb.ovsschema > +++ b/ovn-sb.ovsschema > @@ -1,7 +1,7 @@ > { > "name": "OVN_Southbound", > - "version": "20.41.0", > - "cksum": "2343742948 34719", > + "version": "21.41.0", > + "cksum": "38144040 34712", > "tables": { > "SB_Global": { > "columns": { > @@ -64,7 +64,7 @@ > "columns": { > "type": {"type": {"key": { > "type": "string", > - "enum": ["set", ["geneve", "stt", "vxlan"]]}}}, > + "enum": ["set", ["geneve", "vxlan"]]}}}, > "options": {"type": {"key": "string", > "value": "string", > "min": 0, > diff --git a/ovn-sb.xml b/ovn-sb.xml > index 39acb81a4..bbb3c7b13 100644 > --- a/ovn-sb.xml > +++ b/ovn-sb.xml > @@ -478,9 +478,8 @@ > > <column name="type"> > The encapsulation to use to transmit packets to this chassis. > - Hypervisors and gateways must use one of: <code>geneve</code>, > - <code>vxlan</code>, or <code>stt</code>. <code>stt</code> is > - deprecated. > + Hypervisors and gateways must use <code>geneve</code> or > + <code>vxlan</code>. > </column> > > <column name="options"> > @@ -539,8 +538,7 @@ > > <column name="options" key="dst_port" type='{"type": "integer"}'> > <p> > - If set, overrides the UDP (for <code>geneve</code> and > - <code>vxlan</code>) or TCP (for <code>stt</code>) destination > port. > + If set, overrides the UDP destination port. > </p> > </column> > > @@ -3431,8 +3429,8 @@ tcp.flags = RST; > > <column name="tunnel_key"> > <p> > - A number that represents the logical port in the key (e.g. STT > key or > - Geneve TLV) field carried within tunnel protocol packets. > + A number that represents the logical port in the key (e.g. > Geneve > + TLV) field carried within tunnel protocol packets. > </p> > > <p> > diff --git a/ovs b/ovs > index bb0593334..7f4ee4395 160000 > --- a/ovs > +++ b/ovs > @@ -1 +1 @@ > -Subproject commit bb059333496a9b48d6d798b6b32108c9f2720479 > +Subproject commit 7f4ee4395637e906563c71f4112b809fed4f3968 > diff --git a/tests/ovn-controller.at b/tests/ovn-controller.at > index 2ebf879f1..fdd574c20 100644 > --- a/tests/ovn-controller.at > +++ b/tests/ovn-controller.at > @@ -339,6 +339,7 @@ check_tunnel_property () { > > # create "empty" chassis. vxlan is used here as a stub > check ovn-sbctl chassis-add fakechassis vxlan 192.168.0.2 > +OVS_WAIT_UNTIL([check_tunnel_property type vxlan]) > > # See if we switch to Geneve as the first choice when it is available > # With multi-VTEP support we support tunnels with different IPs to the > @@ -351,15 +352,6 @@ check ovn-sbctl chassis-add fakechassis vxlan > 192.168.0.2 > encap_uuid=$(ovn-sbctl add chassis fakechassis encaps @encap -- > --id=@encap create encap type=geneve ip="192.168.0.2") > OVS_WAIT_UNTIL([check_tunnel_property type geneve]) > > -# change geneve to stt and check that tun interface was deleted and there > is > -# no stt encap on the second chassis, only vxlan > -check ovn-sbctl set encap ${encap_uuid} type=stt > -OVS_WAIT_WHILE([check_tunnel_property type stt]) > -OVS_WAIT_UNTIL([check_tunnel_property type vxlan]) > - > -# change back to geneve > -check ovn-sbctl set encap ${encap_uuid} type=geneve > - > # Check that changes within an encap row are propagated > check ovn-sbctl set encap ${encap_uuid} ip=192.168.0.2 > OVS_WAIT_UNTIL([check_tunnel_property options:remote_ip > "\"192.168.0.2\""]) > diff --git a/tests/ovn-ic.at b/tests/ovn-ic.at > index e62ae3a35..bf360dfba 100644 > --- a/tests/ovn-ic.at > +++ b/tests/ovn-ic.at > @@ -423,10 +423,10 @@ ovs-vsctl set open . > external-ids:ovn-is-interconn=true > OVS_WAIT_UNTIL([ovn_as az2 ovn-sbctl show | grep "192.168.0.1"]) > ovs-vsctl set open . external_ids:ovn-encap-ip=192.168.0.2 > OVS_WAIT_UNTIL([ovn_as az2 ovn-sbctl show | grep "192.168.0.2"]) > -ovs-vsctl set open . external_ids:ovn-encap-type="geneve,stt" > -OVS_WAIT_UNTIL([ovn_as az2 ovn-sbctl show | grep stt]) > +ovs-vsctl set open . external_ids:ovn-encap-type="geneve,vxlan" > +OVS_WAIT_UNTIL([ovn_as az2 ovn-sbctl show | grep vxlan]) > > -OVN_CLEANUP_SBOX([gw2], ["/STT encapsulation type is deprecated/d"]) > +OVN_CLEANUP_SBOX([gw2]) > OVN_CLEANUP_IC([az1], [az2]) > > AT_CLEANUP > diff --git a/tests/ovn-sbctl.at b/tests/ovn-sbctl.at > index 9bb3993f5..c1ec79dc4 100644 > --- a/tests/ovn-sbctl.at > +++ b/tests/ovn-sbctl.at > @@ -76,12 +76,11 @@ AT_CHECK([ovn-sbctl -f csv -d bare --no-headings > --columns ip,type list encap | > 1.2.3.4,geneve > ]) > > -AT_CHECK([ovn-sbctl chassis-add ch1 stt,geneve,vxlan 1.2.3.5]) > +AT_CHECK([ovn-sbctl chassis-add ch1 geneve,vxlan 1.2.3.5]) > AT_CHECK([ovn-sbctl -f csv -d bare --no-headings --columns ip,type list > encap | sort], > [0], [dnl > 1.2.3.4,geneve > 1.2.3.5,geneve > -1.2.3.5,stt > 1.2.3.5,vxlan > ]) > > @@ -89,7 +88,6 @@ AT_CHECK([ovn-sbctl chassis-del ch0]) > AT_CHECK([ovn-sbctl -f csv -d bare --no-headings --columns ip,type list > encap | sort], > [0], [dnl > 1.2.3.5,geneve > -1.2.3.5,stt > 1.2.3.5,vxlan > ]) > > @@ -101,7 +99,6 @@ check_row_count Chassis_Private 1 > AT_CHECK([ovn-sbctl -f csv -d bare --no-headings --columns ip,type list > encap | sort], > [0], [dnl > 1.2.3.5,geneve > -1.2.3.5,stt > 1.2.3.5,vxlan > 2.3.4.5,geneve > ]) > @@ -110,7 +107,6 @@ AT_CHECK([ovn-sbctl chassis-del ch2]) > AT_CHECK([ovn-sbctl -f csv -d bare --no-headings --columns ip,type list > encap | sort], > [0], [dnl > 1.2.3.5,geneve > -1.2.3.5,stt > 1.2.3.5,vxlan > ]) > check_row_count Chassis_Private 0 > @@ -126,13 +122,13 @@ OVN_SBCTL_TEST([ovn_sbctl_commands], [ovn-sbctl], [ > AT_CHECK([ovn-nbctl ls-add br-test]) > AT_CHECK([ovn-nbctl lsp-add br-test vif0]) > AT_CHECK([ovn-nbctl lsp-set-addresses vif0 f0:ab:cd:ef:01:02]) > -AT_CHECK([ovn-sbctl chassis-add ch0 stt 1.2.3.5]) > +AT_CHECK([ovn-sbctl chassis-add ch0 geneve 1.2.3.5]) > AT_CHECK([ovn-nbctl --wait=sb sync]) > AT_CHECK([ovn-sbctl lsp-bind vif0 ch0]) > > AT_CHECK([ovn-sbctl show], [0], [dnl > Chassis ch0 > - Encap stt > + Encap geneve > ip: "1.2.3.5" > options: {csum="true"} > Port_Binding vif0 > @@ -145,7 +141,7 @@ AT_CHECK([ovn-sbctl lsp-bind vif1 ch0]) > > AT_CHECK([ovn-sbctl show | sed 's/vif[[0-9]]/vif/'], [0], [dnl > Chassis ch0 > - Encap stt > + Encap geneve > ip: "1.2.3.5" > options: {csum="true"} > Port_Binding vif > @@ -158,7 +154,7 @@ AT_CHECK([ovn-nbctl --wait=sb sync]) > > AT_CHECK([ovn-sbctl show], [0], [dnl > Chassis ch0 > - Encap stt > + Encap geneve > ip: "1.2.3.5" > options: {csum="true"} > Port_Binding vif0 > diff --git a/tests/ovn.at b/tests/ovn.at > index afde2576f..7d97cd810 100644 > --- a/tests/ovn.at > +++ b/tests/ovn.at > @@ -16515,7 +16515,6 @@ m4_define([MULTICHASSIS_PATH_MTU_DISCOVERY_TEST], > AT_CLEANUP > ])]) > > -# NOTE(ihar) no STT variants because it's not supported by upstream > kernels > MULTICHASSIS_PATH_MTU_DISCOVERY_TEST([ipv4], [geneve], [1424]) > MULTICHASSIS_PATH_MTU_DISCOVERY_TEST([ipv6], [geneve], [1404]) > MULTICHASSIS_PATH_MTU_DISCOVERY_TEST([ipv4], [vxlan], [1432]) > diff --git a/tests/system-kmod-macros.at b/tests/system-kmod-macros.at > index 0eebed815..41a8b7914 100644 > --- a/tests/system-kmod-macros.at > +++ b/tests/system-kmod-macros.at > @@ -18,7 +18,7 @@ m4_define([_ADD_BR], [[add-br $1 -- set Bridge $1 > protocols=OpenFlow10,OpenFlow1 > m4_define([OVS_TRAFFIC_VSWITCHD_START], > [AT_CHECK([modprobe openvswitch]) > on_exit 'modprobe -r openvswitch' > - m4_foreach([mod], [[vport_geneve], [vport_gre], [vport_lisp], > [vport_stt], [vport_vxlan]], > + m4_foreach([mod], [[vport_geneve], [vport_gre], [vport_vxlan]], > [modprobe -q mod || echo "Module mod not loaded." > on_exit 'modprobe -q -r mod' > ]) > -- > 2.49.0 > > _______________________________________________ > dev mailing list > d...@openvswitch.org > https://mail.openvswitch.org/mailman/listinfo/ovs-dev > > Looks good to me, thanks. Acked-by: Ales Musil <amu...@redhat.com> _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev