From 9723479def62c48a868c396d69ca7a0e49a03865 Mon Sep 17 00:00:00 2001 From: Open vSwitch CI Date: Dec 12 2024 05:56:18 +0000 Subject: Import openvswitch3.3-3.3.0-21 from Fast DataPath --- diff --git a/SOURCES/openvswitch-3.3.0.patch b/SOURCES/openvswitch-3.3.0.patch index e90b16c..df47a5b 100644 --- a/SOURCES/openvswitch-3.3.0.patch +++ b/SOURCES/openvswitch-3.3.0.patch @@ -48,7 +48,7 @@ index 5028bdc442..5f8a1db6af 100755 # Install python test dependencies pip3 install -r python/test_requirements.txt diff --git a/.cirrus.yml b/.cirrus.yml -index d8a9722809..8835501d4d 100644 +index d8a9722809..9f0fbfe40d 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -2,13 +2,13 @@ freebsd_build_task: @@ -57,8 +57,8 @@ index d8a9722809..8835501d4d 100644 matrix: - image_family: freebsd-13-2-snap - image_family: freebsd-14-0-snap -+ image_family: freebsd-13-3-snap -+ image_family: freebsd-14-1-snap ++ image_family: freebsd-13-4-snap ++ image_family: freebsd-14-2-snap cpu: 4 memory: 4G @@ -10644,7 +10644,7 @@ index 495be35652..edef0f18ef 100644 c = getopt_long(argc, argv, short_options, options, &idx); diff --git a/vswitchd/bridge.c b/vswitchd/bridge.c -index 95a65fcdcd..0352030fec 100644 +index 95a65fcdcd..60d40e1100 100644 --- a/vswitchd/bridge.c +++ b/vswitchd/bridge.c @@ -3398,7 +3398,8 @@ bridge_run(void) @@ -10657,6 +10657,86 @@ index 95a65fcdcd..0352030fec 100644 } } +@@ -4049,6 +4050,8 @@ static void + bridge_configure_tables(struct bridge *br) + { + static struct vlog_rate_limit rl = VLOG_RATE_LIMIT_INIT(1, 5); ++ char *prev_prefixes = NULL; ++ int prev_start = 0; + int n_tables; + int i, j; + +@@ -4110,18 +4113,21 @@ bridge_configure_tables(struct bridge *br) + } + mf = mf_from_name(name); + if (!mf) { +- VLOG_WARN("bridge %s: 'prefixes' with unknown field: %s", +- br->name, name); ++ VLOG_WARN_RL(&rl, "bridge %s: " ++ "'prefixes' with unknown field: %s", ++ br->name, name); + continue; + } + if (mf->flow_be32ofs < 0 || mf->n_bits % 32) { +- VLOG_WARN("bridge %s: 'prefixes' with incompatible field: " +- "%s", br->name, name); ++ VLOG_WARN_RL(&rl, "bridge %s: " ++ "'prefixes' with incompatible field: %s", ++ br->name, name); + continue; + } + if (s.n_prefix_fields >= ARRAY_SIZE(s.prefix_fields)) { +- VLOG_WARN("bridge %s: 'prefixes' with too many fields, " +- "field not used: %s", br->name, name); ++ VLOG_WARN_RL(&rl, "bridge %s: " ++ "'prefixes' with too many fields, " ++ "field not used: %s", br->name, name); + continue; + } + use_default_prefixes = false; +@@ -4133,8 +4139,10 @@ bridge_configure_tables(struct bridge *br) + s.n_prefix_fields = ARRAY_SIZE(default_prefix_fields); + memcpy(s.prefix_fields, default_prefix_fields, + sizeof default_prefix_fields); +- } else { ++ } ++ if (VLOG_IS_DBG_ENABLED()) { + struct ds ds = DS_EMPTY_INITIALIZER; ++ + for (int k = 0; k < s.n_prefix_fields; k++) { + if (k) { + ds_put_char(&ds, ','); +@@ -4144,8 +4152,16 @@ bridge_configure_tables(struct bridge *br) + if (s.n_prefix_fields == 0) { + ds_put_cstr(&ds, "none"); + } +- VLOG_INFO("bridge %s table %d: Prefix lookup with: %s.", +- br->name, i, ds_cstr(&ds)); ++ if (!prev_prefixes) { ++ prev_prefixes = ds_steal_cstr(&ds); ++ prev_start = i; ++ } else if (prev_prefixes && strcmp(prev_prefixes, ds_cstr(&ds))) { ++ VLOG_DBG("bridge %s tables %d-%d: Prefix lookup with: %s.", ++ br->name, prev_start, i - 1, prev_prefixes); ++ free(prev_prefixes); ++ prev_prefixes = ds_steal_cstr(&ds); ++ prev_start = i; ++ } + ds_destroy(&ds); + } + +@@ -4153,6 +4169,11 @@ bridge_configure_tables(struct bridge *br) + + free(s.groups); + } ++ if (prev_prefixes) { ++ VLOG_DBG("bridge %s tables %d-%d: Prefix lookup with: %s.", ++ br->name, prev_start, n_tables - 1, prev_prefixes); ++ free(prev_prefixes); ++ } + for (; j < br->cfg->n_flow_tables; j++) { + VLOG_WARN_RL(&rl, "bridge %s: ignoring configuration for flow table " + "%"PRId64" not supported by this datapath", br->name, diff --git a/vswitchd/vswitch.ovsschema b/vswitchd/vswitch.ovsschema index e2d5e2e85e..61be3ac079 100644 --- a/vswitchd/vswitch.ovsschema diff --git a/SPECS/openvswitch3.3.spec b/SPECS/openvswitch3.3.spec index cc5502d..273c2ae 100644 --- a/SPECS/openvswitch3.3.spec +++ b/SPECS/openvswitch3.3.spec @@ -57,7 +57,7 @@ Summary: Open vSwitch Group: System Environment/Daemons daemon/database/utilities URL: http://www.openvswitch.org/ Version: 3.3.0 -Release: 20%{?dist} +Release: 21%{?dist} # Nearly all of openvswitch is ASL 2.0. The bugtool is LGPLv2+, and the # lib/sflow*.[ch] files are SISSL @@ -769,6 +769,13 @@ exit 0 %endif %changelog +* Wed Dec 11 2024 Open vSwitch CI - 3.3.0-21 +- Merging upstream branch-3.3 [RH git: 9d4392d406] + Commit list: + b87384d5f4 cirrus: Update to FreeBSD 14.2 and 13.4. + 3bf975309a bridge: Fix log spam about prefixes. + + * Mon Dec 02 2024 Open vSwitch CI - 3.3.0-20 - Merging upstream branch-3.3 [RH git: 9f1f2517c8] Commit list: