Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package systemd for openSUSE:Factory checked 
in at 2021-08-04 22:28:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/systemd (Old)
 and      /work/SRC/openSUSE:Factory/.systemd.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "systemd"

Wed Aug  4 22:28:26 2021 rev:334 rq:909721 version:248.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/systemd/systemd-mini.changes     2021-08-02 
12:04:56.789657608 +0200
+++ /work/SRC/openSUSE:Factory/.systemd.new.1899/systemd-mini.changes   
2021-08-04 22:29:05.813786469 +0200
@@ -1,0 +2,6 @@
+Thu Jul 29 13:12:48 UTC 2021 - Franck Bui <f...@suse.com>
+
+- Avoid the error message when udev is updated due to udev being
+  already active when the sockets are started again (bsc#1188291)
+
+-------------------------------------------------------------------
systemd.changes: same change

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

Other differences:
------------------
++++++ systemd-mini.spec ++++++
--- /var/tmp/diff_new_pack.USTuGL/_old  2021-08-04 22:29:06.793785273 +0200
+++ /var/tmp/diff_new_pack.USTuGL/_new  2021-08-04 22:29:06.797785268 +0200
@@ -974,17 +974,21 @@
 
 %postun -n udev%{?mini}
 %regenerate_initrd_post
-systemctl daemon-reload || :
-# On package update, restarting the socket units will probably fail as
-# udevd is most likely running. Therefore systemctl will refuse to
-# start them again once stopped. It's not an issue since we are mostly
-# interested to make PID1 use the updated unit files once the socket
-# units wil be started again. And that will happen when systemd-udevd
-# itself will be restarted.
-if [ $1 -ge 1 ]; then
-       systemctl try-restart systemd-udevd-{control,kernel}.socket 2>/dev/null 
|| :
-       systemctl try-restart systemd-udevd.service || :
-fi
+
+# The order of the units being restarted is important here because there's 
currently no
+# way to queue multiple jobs into a single transaction atomically. Therefore 
systemctl
+# will create 3 restart jobs that can be handled by PID1 separately and if the 
jobs for
+# the sockets are being handled first then starting them again will fail as 
the service
+# is still active hence the sockets held by udevd. However if the restart job 
for udevd
+# is handled first, there should be enough time to queue the socket jobs 
before the stop
+# job for udevd is processed. Hence PID1 will automatically sort the restart 
jobs
+# correctly by stopping the service then the sockets and then by starting the 
sockets and
+# the unit.
+#
+# Note that when systemd-udevd is restarted, there will always be a short time
+# frame where no socket will be listening to the events sent by the kernel, no
+# matter if the socket unit is restarted in first or not.
+%service_del_postun_with_restart systemd-udevd.service 
systemd-udevd-{control,kernel}.socket
 
 %posttrans -n udev%{?mini}
 %regenerate_initrd_posttrans

++++++ systemd.spec ++++++
--- /var/tmp/diff_new_pack.USTuGL/_old  2021-08-04 22:29:06.829785229 +0200
+++ /var/tmp/diff_new_pack.USTuGL/_new  2021-08-04 22:29:06.833785224 +0200
@@ -972,17 +972,21 @@
 
 %postun -n udev%{?mini}
 %regenerate_initrd_post
-systemctl daemon-reload || :
-# On package update, restarting the socket units will probably fail as
-# udevd is most likely running. Therefore systemctl will refuse to
-# start them again once stopped. It's not an issue since we are mostly
-# interested to make PID1 use the updated unit files once the socket
-# units wil be started again. And that will happen when systemd-udevd
-# itself will be restarted.
-if [ $1 -ge 1 ]; then
-       systemctl try-restart systemd-udevd-{control,kernel}.socket 2>/dev/null 
|| :
-       systemctl try-restart systemd-udevd.service || :
-fi
+
+# The order of the units being restarted is important here because there's 
currently no
+# way to queue multiple jobs into a single transaction atomically. Therefore 
systemctl
+# will create 3 restart jobs that can be handled by PID1 separately and if the 
jobs for
+# the sockets are being handled first then starting them again will fail as 
the service
+# is still active hence the sockets held by udevd. However if the restart job 
for udevd
+# is handled first, there should be enough time to queue the socket jobs 
before the stop
+# job for udevd is processed. Hence PID1 will automatically sort the restart 
jobs
+# correctly by stopping the service then the sockets and then by starting the 
sockets and
+# the unit.
+#
+# Note that when systemd-udevd is restarted, there will always be a short time
+# frame where no socket will be listening to the events sent by the kernel, no
+# matter if the socket unit is restarted in first or not.
+%service_del_postun_with_restart systemd-udevd.service 
systemd-udevd-{control,kernel}.socket
 
 %posttrans -n udev%{?mini}
 %regenerate_initrd_posttrans

Reply via email to