Hello community,

here is the log from the commit of package wicked for openSUSE:Factory checked 
in at 2017-12-29 00:01:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wicked (Old)
 and      /work/SRC/openSUSE:Factory/.wicked.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "wicked"

Fri Dec 29 00:01:26 2017 rev:65 rq:559071 version:0.6.43

Changes:
--------
--- /work/SRC/openSUSE:Factory/wicked/wicked.changes    2017-12-19 
10:42:52.048058869 +0100
+++ /work/SRC/openSUSE:Factory/.wicked.new/wicked.changes       2017-12-29 
00:01:31.248805368 +0100
@@ -1,0 +2,8 @@
+Thu Dec 21 11:49:14 UTC 2017 - [email protected]
+
+- wickedd: clear master references on slaves when a master gets
+  deleted and the deletion event arrives before unenslave event
+  to avoid a bridge reenslave failure on restart (bsc#1061051).
+  [+ 0001-wickedd-explicitly-unbind-slaves-on-deletion.patch]
+
+-------------------------------------------------------------------

New:
----
  0001-wickedd-explicitly-unbind-slaves-on-deletion.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ wicked.spec ++++++
--- /var/tmp/diff_new_pack.D2GjLZ/_old  2017-12-29 00:01:34.127980107 +0100
+++ /var/tmp/diff_new_pack.D2GjLZ/_new  2017-12-29 00:01:34.127980107 +0100
@@ -26,6 +26,7 @@
 Url:            https://github.com/openSUSE/wicked
 Source0:        %{name}-%{version}.tar.bz2
 Source1:        wicked-rpmlintrc
+Patch1:         0001-wickedd-explicitly-unbind-slaves-on-deletion.patch
 #
 # Upstream First - openSUSE Build Service Policy:
 #
@@ -172,6 +173,7 @@
 
 %prep
 %setup
+%patch1 -p1
 
 %build
 test -x ./configure || autoreconf --force --install

++++++ 0001-wickedd-explicitly-unbind-slaves-on-deletion.patch ++++++
>From b1864c1fcbedfd49ff55fb82b528ac86b0825317 Mon Sep 17 00:00:00 2001
From: Marius Tomaschewski <[email protected]>
Date: Thu, 21 Dec 2017 10:16:04 +0100
Subject: [PATCH] wickedd: explicitly unbind slaves on deletion
References: bsc#1061051
Upstream: accepted

When a master device is deleted, explicitly clear references
pointing to it on slaves instead to let it perform by further
event, which may arrive later than an attempt to enslave them
into a new, recreated master device (with same name).

diff --git a/src/netinfo.c b/src/netinfo.c
index 3729284e..6a1348cd 100644
--- a/src/netinfo.c
+++ b/src/netinfo.c
@@ -581,6 +581,17 @@ ni_netconfig_device_append(ni_netconfig_t *nc, ni_netdev_t 
*dev)
        __ni_netdev_list_append(&nc->interfaces, dev);
 }
 
+static inline void
+ni_netconfig_device_unbind_slave_index(ni_netconfig_t *nc, unsigned int master)
+{
+       ni_netdev_t *dev;
+
+       for (dev = nc->interfaces; dev; dev = dev->next) {
+               if (dev->link.masterdev.index == master)
+                       ni_netdev_ref_destroy(&dev->link.masterdev);
+       }
+}
+
 void
 ni_netconfig_device_remove(ni_netconfig_t *nc, ni_netdev_t *dev)
 {
@@ -589,6 +600,7 @@ ni_netconfig_device_remove(ni_netconfig_t *nc, ni_netdev_t 
*dev)
        for (pos = &nc->interfaces; (cur = *pos) != NULL; pos = &cur->next) {
                if (cur == dev) {
                        *pos = cur->next;
+                       ni_netconfig_device_unbind_slave_index(nc, 
cur->link.ifindex);
                        ni_netdev_put(cur);
                        return;
                }
-- 
2.13.6


Reply via email to