Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package wicked for openSUSE:Factory checked in at 2024-03-17 22:10:34 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/wicked (Old) and /work/SRC/openSUSE:Factory/.wicked.new.1905 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wicked" Sun Mar 17 22:10:34 2024 rev:98 rq:1158066 version:0.6.74 Changes: -------- --- /work/SRC/openSUSE:Factory/wicked/wicked.changes 2024-02-25 14:05:52.200359094 +0100 +++ /work/SRC/openSUSE:Factory/.wicked.new.1905/wicked.changes 2024-03-17 22:10:35.688525514 +0100 @@ -1,0 +2,8 @@ +Thu Mar 14 11:37:01 UTC 2024 - Marius Tomaschewski <m...@suse.com> + +- addrconf: fix fallback-lease drop (bsc#1220996) + [+ 0001-addrconf-fix-fallback-lease-drop-bsc-1220996.patch] +- extensions/nbft: use upstream `nvme nbft show` (bsc#1221358) + [+ 0002-extensions-nbft-replace-nvme-show-nbft-with-nvme-nbf.patch] + +------------------------------------------------------------------- New: ---- 0001-addrconf-fix-fallback-lease-drop-bsc-1220996.patch 0002-extensions-nbft-replace-nvme-show-nbft-with-nvme-nbf.patch BETA DEBUG BEGIN: New:- addrconf: fix fallback-lease drop (bsc#1220996) [+ 0001-addrconf-fix-fallback-lease-drop-bsc-1220996.patch] - extensions/nbft: use upstream `nvme nbft show` (bsc#1221358) New:- extensions/nbft: use upstream `nvme nbft show` (bsc#1221358) [+ 0002-extensions-nbft-replace-nvme-show-nbft-with-nvme-nbf.patch] BETA DEBUG END: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ wicked.spec ++++++ --- /var/tmp/diff_new_pack.jYrtpz/_old 2024-03-17 22:10:36.512555554 +0100 +++ /var/tmp/diff_new_pack.jYrtpz/_new 2024-03-17 22:10:36.512555554 +0100 @@ -26,6 +26,8 @@ URL: https://github.com/openSUSE/wicked Source0: %{name}-%{version}.tar.bz2 Source1: wicked-rpmlintrc +Patch1: 0001-addrconf-fix-fallback-lease-drop-bsc-1220996.patch +Patch2: 0002-extensions-nbft-replace-nvme-show-nbft-with-nvme-nbf.patch # # Upstream First - openSUSE Build Service Policy: # @@ -121,8 +123,9 @@ Summary: Network configuration infrastructure - nbft support Group: System/Management Requires: %name = %{version} +# Support for the "nvme nbft show" command +Requires: nvme-cli >= 2.4+17.gf4cfca93998a Requires: jq >= 1.6 -Requires: nvme-cli >= 2.2.1 %description nbft This package provides an extension to retrieve the NBFT firmware ++++++ 0001-addrconf-fix-fallback-lease-drop-bsc-1220996.patch ++++++ >From 969a3ac88391667821f84a2fe11e21b8ded89745 Mon Sep 17 00:00:00 2001 From: Clemens Famulla-Conrad <cfamullacon...@suse.de> Date: Thu, 14 Mar 2024 11:43:11 +0100 Subject: [PATCH 1/3] addrconf: fix fallback-lease drop (bsc#1220996) If the lease isn't known by the supplicant, we need to stop/cleanup local data-structures and notify listeners e.g. nanny. Signed-off-by: Marius Tomaschewski <m...@suse.com> --- src/dbus-objects/addrconf.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/dbus-objects/addrconf.c b/src/dbus-objects/addrconf.c index 993c939d8..d9de24674 100644 --- a/src/dbus-objects/addrconf.c +++ b/src/dbus-objects/addrconf.c @@ -1357,6 +1357,14 @@ ni_objectmodel_addrconf_fallback_release(ni_netdev_t *dev, unsigned int family) ni_debug_objectmodel("%s: no %s/%s lease", dev->name, ni_addrconf_type_to_name(forwarder->addrconf), ni_addrfamily_type_to_name(forwarder->addrfamily)); + + if (ni_addrconf_flag_bit_is_set(lease->flags, NI_ADDRCONF_FLAGS_FALLBACK)) { + /* bsc#1220996 - on fallback lease, it just wasn't triggered, + * so we need to change state and inform nanny that it's done. */ + lease->state = NI_ADDRCONF_STATE_REQUESTING; + ni_objectmodel_addrconf_send_event(dev, + NI_EVENT_ADDRESS_DEFERRED, &lease->uuid); + } rv = TRUE; break; default: -- 2.35.3 >From 5b44baf4108a5ab8f279f89ade107e985cc756e8 Mon Sep 17 00:00:00 2001 From: Clemens Famulla-Conrad <cfamullacon...@suse.de> Date: Thu, 14 Mar 2024 11:43:34 +0100 Subject: [PATCH 2/3] client: show lease fallback flag in ifstatus Signed-off-by: Marius Tomaschewski <m...@suse.com> --- client/ifstatus.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/client/ifstatus.c b/client/ifstatus.c index 5feb79d2b..51f5ba4ca 100644 --- a/client/ifstatus.c +++ b/client/ifstatus.c @@ -617,10 +617,14 @@ __show_leases_by_family(const ni_netdev_t *dev, ni_bool_t verbose, sa_family_t f ni_addrconf_type_to_name(lease->type), ni_addrconf_state_to_name(lease->state)); - if (verbose && lease->flags) { + if ((verbose && lease->flags) || + ni_addrconf_flag_bit_is_set(lease->flags, NI_ADDRCONF_FLAGS_FALLBACK)) { + ni_stringbuf_t tmp = NI_STRINGBUF_INIT_DYNAMIC; ni_stringbuf_puts(&buf, " ["); - ni_addrconf_flags_format(&buf, lease->flags, ","); + ni_addrconf_flags_format(&tmp, lease->flags, ","); + ni_stringbuf_puts(&buf, tmp.string); ni_stringbuf_puts(&buf, "]"); + ni_stringbuf_destroy(&tmp); } } if (buf.string) -- 2.35.3 >From 5fb4a07e9c9cef1bd6922e2b5d2004b60a7d753b Mon Sep 17 00:00:00 2001 From: Clemens Famulla-Conrad <cfamullacon...@suse.de> Date: Thu, 14 Mar 2024 11:43:34 +0100 Subject: [PATCH 3/3] client: fix ifstatus for fallback lease Signed-off-by: Marius Tomaschewski <m...@suse.com> --- client/ifstatus.c | 46 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/client/ifstatus.c b/client/ifstatus.c index 51f5ba4ca..568de17bf 100644 --- a/client/ifstatus.c +++ b/client/ifstatus.c @@ -213,10 +213,44 @@ __ifstatus_of_device_lease(ni_netdev_t *dev, ni_addrconf_lease_t *lease, unsigne } } +static ni_addrconf_lease_t* +ifstatus_primary_lease(ni_netdev_t *dev, + ni_addrconf_lease_t *lease) +{ + ni_addrconf_lease_t *l; + + if (!ni_addrconf_flag_bit_is_set(lease->flags, NI_ADDRCONF_FLAGS_FALLBACK)) + return NULL; + + for (l = dev->leases; l; l = l->next) { + if (l->family != lease->family) + continue; + + if (!ni_addrconf_flag_bit_is_set(l->flags, NI_ADDRCONF_FLAGS_PRIMARY)) + continue; + + if (ni_log_level_at(NI_LOG_DEBUG1)) { + ni_stringbuf_t buf = NI_STRINGBUF_INIT_DYNAMIC; + + ni_addrconf_flags_format(&buf, l->flags, "|"); + ni_debug_application("%s: primary lease %s:%s, state=%s, flags=%s", + dev->name, + ni_addrfamily_type_to_name(l->family), + ni_addrconf_type_to_name(l->type), + ni_addrconf_state_to_name(l->state), + buf.string); + ni_stringbuf_destroy(&buf); + } + + return l; + } + return NULL; +} + static void __ifstatus_of_device_leases(ni_netdev_t *dev, unsigned int *st) { - ni_addrconf_lease_t *lease; + ni_addrconf_lease_t *lease, *primary; if (!dev || !st) return; @@ -241,6 +275,16 @@ __ifstatus_of_device_leases(ni_netdev_t *dev, unsigned int *st) NI_ADDRCONF_FLAGS_OPTIONAL)) continue; + /* Do not consider fallback lease status, if there is a + * corresponding primary+granted lease */ + if ((primary = ifstatus_primary_lease(dev, lease))) { + unsigned int tmp = NI_WICKED_ST_OK; + + __ifstatus_of_device_lease(dev, primary, &tmp); + if (tmp == NI_WICKED_ST_OK) + continue; + } + __ifstatus_of_device_lease(dev, lease, st); } } -- 2.35.3 ++++++ 0002-extensions-nbft-replace-nvme-show-nbft-with-nvme-nbf.patch ++++++ >From 0992848bc7ac30e39a41a63335e8550d70ae7d1f Mon Sep 17 00:00:00 2001 From: Martin Wilck <mwi...@suse.com> Date: Wed, 13 Mar 2024 21:00:03 +0100 Subject: [PATCH] extensions/nbft: replace "nvme show-nbft" with "nvme nbft show" Upstream nvme-cli has moved the nbft support into a plugin. The syntax is now "nvme nbft show" rather than "nvme show-nbft". Signed-off-by: Marius Tomaschewski <m...@suse.com> diff --git a/extensions/nbft b/extensions/nbft index 22af22760..6cb689892 100755 --- a/extensions/nbft +++ b/extensions/nbft @@ -252,7 +252,7 @@ nvme_show_nbft() { if test "X$OPT_ROOTDIR" != "X" -a -f "$OPT_ROOTDIR/nbft.json" ; then cat "$OPT_ROOTDIR/nbft.json" else - nvme show-nbft -H -o json + nvme nbft show -H -o json fi } @@ -261,7 +261,7 @@ nbft_parse() { local j=0 i nbft_json=$(nvme_show_nbft 2>/dev/null) || { - warn "failed to read NBFT table, is \"nvme show-nbft\" supported?" + warn "failed to read NBFT table, is \"nvme nbft show\" supported?" return $RC_ERROR } n_nbft=$(nbft_run_jq ". | length" "$nbft_json") || return 0 -- 2.35.3