Your message dated Sat, 17 Sep 2016 13:08:06 +0100
with message-id <1474114086.2011.126.ca...@adam-barratt.org.uk>
and subject line Closing p-u bugs for updates in 8.6
has caused the Debian Bug report #835537,
regarding jessie-pu: package open-iscsi/2.0.873+git0.3b4b4500-8+deb8u1
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
835537: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=835537
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
User: release.debian....@packages.debian.org
Usertags: pu
Tags: jessie
Severity: normal
X-Debbugs-Cc: pkg-iscsi-maintain...@lists.alioth.debian.org, k...@debian.org

Dear release team,
(Cc'ing KiBi because this affects d-i/udebs.)

I'd like to propose an update of open-iscsi for the next point release.
It fixes the following two bugs:

 - https://bugs.debian.org/834830 (Severity: serious)

   This was reported on debian-user recently: after an installation on
   an iSCSI device, open-iscsi-udeb contains a hook to copy /etc/iscsi
   from the d-i environment over to the system. But it doesn't
   regenerate the initramfs afterwards - and because the daemon was
   never started in the installed system, the initiatorname.iscsi file
   would not contain a valid initiator name.

   Basically, this rendered a freshly installed system on iSCSI
   unbootable.

   sid hasn't been affected for a while, since we moved the generation
   logic from daemon startup to postinst. However, that change is not
   trivial, and the simpler fix is to simply regenerate the initramfs
   after copying the configuration to the system. In order to not have
   code in Jessie that's not also in sid, I've added the initramfs
   regeneration to the package in sid anyway. [1] (Even though it's not
   necessary there.)

   I've tested the udeb by starting an 8.5 installer, and installing
   the updated udeb via wget + udpkg and can confirm that it now works
   as expected.

 - https://bugs.debian.org/833917 (Severity: important)

   This was also reported on debian-user recently. There's a race
   condition at startup: while the current init script of open-iscsi
   does wait for the iSCSI disks themselves to appear via udevadm
   settle, the kernel scans disks for partitions asynchronously,
   which can lead to LVs on partitions not being activated.

   The proper fix for that will be to switch to an event-based startup;
   in order to support that in combination with LVM one needs lvmetad
   though - which doesn't work in Jessie. (See #774082.)

   The simplest workaround is to just wait a second after iSCSI session
   login. This is not ideal, but the least-invasive fix to improve the
   experience for Jessie users. I've also applied this workaround to
   the package in sid [2], because the event-based logic isn't complete
   there yet.

   In sid we already had a similar workaround when multipath was
   installed, waiting 3s. (multipath is even more racy.) I've taken the
   liberty in backporting that fix to Jessie as well.

   I've tested the resulting package on a Jessie system.

Source debdiff against the current version in Jessie is attached.

Thanks for considering,
Christian

[1] 
http://sources.debian.net/src/open-iscsi/2.0.873%2Bgit1.4c1f2d90-2/debian/open-iscsi-udeb.finish-install/#L15
[2] 
http://sources.debian.net/src/open-iscsi/2.0.873%2Bgit1.4c1f2d90-2/debian/extra/activate-storage.sh/#L58

diff -Nru open-iscsi-2.0.873+git0.3b4b4500/debian/changelog open-iscsi-2.0.873+git0.3b4b4500/debian/changelog
--- open-iscsi-2.0.873+git0.3b4b4500/debian/changelog	2015-05-24 10:48:15.000000000 +0200
+++ open-iscsi-2.0.873+git0.3b4b4500/debian/changelog	2016-08-20 11:14:44.000000000 +0200
@@ -1,3 +1,14 @@
+open-iscsi (2.0.873+git0.3b4b4500-8+deb8u2) jessie; urgency=medium
+
+  * [6d8d26d] init script: wait a bit after iSCSI devices have appeared.
+    This works around a race condition in which dependent devices can
+    appear only after the initial udev settle has returned.
+    (Closes: #833917)
+  * [8a8a870] open-iscsi-udeb: update initramfs after copying
+    configuration to target system. (Closes: #834830)
+
+ -- Christian Seiler <christ...@iwakd.de>  Sat, 20 Aug 2016 11:14:44 +0200
+
 open-iscsi (2.0.873+git0.3b4b4500-8+deb8u1) stable; urgency=medium
 
   * [725c5c6] Populate udebs in every architecture they are built
diff -Nru open-iscsi-2.0.873+git0.3b4b4500/debian/open-iscsi.init open-iscsi-2.0.873+git0.3b4b4500/debian/open-iscsi.init
--- open-iscsi-2.0.873+git0.3b4b4500/debian/open-iscsi.init	2015-02-10 14:34:58.000000000 +0100
+++ open-iscsi-2.0.873+git0.3b4b4500/debian/open-iscsi.init	2016-08-20 11:14:44.000000000 +0200
@@ -109,6 +109,20 @@
 
 	udevadm settle || true;
 
+	# Work around race conditions: while after the above settle
+	# the disks themselves are guaranteed to be there, the
+	# kernel will scan partitions asynchronously; and multipathd
+	# will activate multipath devices only after a short delay
+	# (while it itself races for a lock with udev).
+	# See Debian Bug #833917 for details.
+	if [ -x /sbin/multipath ] ; then
+		sleep 3
+	else
+		sleep 1
+	fi
+	# Settle again to make sure that dependent devices are now
+	# available.
+	udevadm settle || true;
 
 	# Handle iSCSI LVM devices
 	if [ ! -x "/sbin/vgchange" -a -n "$LVMGROUPS" ]; then
diff -Nru open-iscsi-2.0.873+git0.3b4b4500/debian/open-iscsi-udeb.finish-install open-iscsi-2.0.873+git0.3b4b4500/debian/open-iscsi-udeb.finish-install
--- open-iscsi-2.0.873+git0.3b4b4500/debian/open-iscsi-udeb.finish-install	2015-05-24 10:46:48.000000000 +0200
+++ open-iscsi-2.0.873+git0.3b4b4500/debian/open-iscsi-udeb.finish-install	2016-08-20 11:14:44.000000000 +0200
@@ -12,4 +12,8 @@
 if [ "$got_iscsi" ]; then
 	# Copy the configuration to the target...
 	cp -a /etc/iscsi /target/etc/
+	if [ -x /target/usr/sbin/update-initramfs ] ; then
+		echo "iSCSI detected, refreshing initramfs"
+		/bin/in-target update-initramfs -k all -u
+	fi
 fi

--- End Message ---
--- Begin Message ---
Version: 8.6

The updates referred to in each of these bugs were included in today's
stable point release.

Regards,

Adam

--- End Message ---

Reply via email to