Blame SOURCES/0001-improve-systemd-service-files-for-boot-session-handl.patch

3d2430
From 80603fd5378a7ec4e274188bd5582fa94ec69b27 Mon Sep 17 00:00:00 2001
3d2430
From: rpm-build <rpm-build>
3d2430
Date: Mon, 28 Oct 2019 10:20:56 -0700
3d2430
Subject: [PATCH 1/1] improve systemd service files for boot session handling
3d2430
3d2430
---
3d2430
 etc/systemd/iscsi-mark-root-nodes |  6 +++++-
3d2430
 etc/systemd/iscsi-onboot.service  | 15 +++++++++++++++
3d2430
 etc/systemd/iscsi.service         |  8 ++------
3d2430
 3 files changed, 22 insertions(+), 7 deletions(-)
3d2430
 create mode 100644 etc/systemd/iscsi-onboot.service
3d2430
3d2430
diff --git a/etc/systemd/iscsi-mark-root-nodes b/etc/systemd/iscsi-mark-root-nodes
3d2430
index 6bddf6c..cc76100 100644
3d2430
--- a/etc/systemd/iscsi-mark-root-nodes
3d2430
+++ b/etc/systemd/iscsi-mark-root-nodes
3d2430
@@ -9,7 +9,11 @@ while read t num p target flash; do
3d2430
   portal=${p%,*}
3d2430
   transport=${t%:}
3d2430
 
3d2430
-  $ISCSIADM -m node -p $portal -T $target -o update -n node.startup -v onboot
3d2430
+  # use session number to find the iface name in use
3d2430
+  num=${num#[}; num=${num%]}
3d2430
+  iface=$(iscsiadm -m session -r $num | grep iface.iscsi_ifacename | cut -d= -f2)
3d2430
+
3d2430
+  $ISCSIADM -m node -p $portal -T $target -I $iface -o update -n node.startup -v onboot
3d2430
 
3d2430
   start_iscsid=1
3d2430
 
3d2430
diff --git a/etc/systemd/iscsi-onboot.service b/etc/systemd/iscsi-onboot.service
3d2430
new file mode 100644
3d2430
index 0000000..42ced68
3d2430
--- /dev/null
3d2430
+++ b/etc/systemd/iscsi-onboot.service
3d2430
@@ -0,0 +1,15 @@
3d2430
+[Unit]
3d2430
+Description=Special handling of early boot iSCSI sessions
3d2430
+Documentation=man:iscsiadm(8) man:iscsid(8)
3d2430
+DefaultDependencies=no
3d2430
+RefuseManualStart=true
3d2430
+Before=iscsi.service
3d2430
+After=systemd-remount-fs.service
3d2430
+ConditionDirectoryNotEmpty=/sys/class/iscsi_session
3d2430
+
3d2430
+[Service]
3d2430
+Type=oneshot
3d2430
+ExecStart=-/usr/libexec/iscsi-mark-root-nodes
3d2430
+
3d2430
+[Install]
3d2430
+WantedBy=sysinit.target
3d2430
diff --git a/etc/systemd/iscsi.service b/etc/systemd/iscsi.service
3d2430
index f09b3a0..1d52882 100644
3d2430
--- a/etc/systemd/iscsi.service
3d2430
+++ b/etc/systemd/iscsi.service
3d2430
@@ -2,21 +2,17 @@
3d2430
 Description=Login and scanning of iSCSI devices
3d2430
 Documentation=man:iscsiadm(8) man:iscsid(8)
3d2430
 DefaultDependencies=no
3d2430
-Conflicts=shutdown.target
3d2430
 Before=remote-fs-pre.target
3d2430
 After=network.target network-online.target iscsid.service iscsiuio.service systemd-remount-fs.service
3d2430
 Wants=remote-fs-pre.target iscsi-shutdown.service
3d2430
-ConditionPathExists=/etc/iscsi/initiatorname.iscsi
3d2430
-ConditionDirectoryNotEmpty=|/var/lib/iscsi/nodes
3d2430
-ConditionDirectoryNotEmpty=|/sys/class/iscsi_session
3d2430
+ConditionDirectoryNotEmpty=/var/lib/iscsi/nodes
3d2430
 
3d2430
 [Service]
3d2430
 Type=oneshot
3d2430
-ExecStart=-/usr/libexec/iscsi-mark-root-nodes
3d2430
+RemainAfterExit=true
3d2430
 ExecStart=-/sbin/iscsiadm -m node --loginall=automatic
3d2430
 ExecReload=-/sbin/iscsiadm -m node --loginall=automatic
3d2430
 SuccessExitStatus=21
3d2430
-RemainAfterExit=true
3d2430
 
3d2430
 [Install]
3d2430
 WantedBy=remote-fs.target
3d2430
-- 
3d2430
2.21.0
3d2430