Blame SOURCES/0001-service-file-tweaks.patch

221d9a
From 2d84ee02e9ac69928261b38b5876bebb2349bd65 Mon Sep 17 00:00:00 2001
5f4533
From: rpm-build <rpm-build>
5f4533
Date: Tue, 4 Jun 2019 13:23:32 -0700
5f4533
Subject: [PATCH] service file tweaks
5f4533
5f4533
---
5f4533
 etc/systemd/iscsi-mark-root-nodes  | 30 ++++++++++++++++++++++++++++++
5f4533
 etc/systemd/iscsi-shutdown.service | 14 ++++++++++++++
5f4533
 etc/systemd/iscsi.service          | 23 +++++++++++++----------
5f4533
 etc/systemd/iscsid.service         |  6 ++++--
5f4533
 etc/systemd/iscsiuio.service       |  2 +-
5f4533
 5 files changed, 62 insertions(+), 13 deletions(-)
5f4533
 create mode 100755 etc/systemd/iscsi-mark-root-nodes
5f4533
 create mode 100644 etc/systemd/iscsi-shutdown.service
5f4533
5f4533
diff --git a/etc/systemd/iscsi-mark-root-nodes b/etc/systemd/iscsi-mark-root-nodes
5f4533
new file mode 100755
5f4533
index 0000000..c693707
5f4533
--- /dev/null
5f4533
+++ b/etc/systemd/iscsi-mark-root-nodes
5f4533
@@ -0,0 +1,30 @@
5f4533
+#!/bin/bash
5f4533
+
5f4533
+ISCSIADM=/usr/sbin/iscsiadm
5f4533
+start_iscsid=0
5f4533
+start_iscsiuio=0
5f4533
+
5f4533
+while read t num p target flash; do
5f4533
+  # strip tag number from portal, keep "ip:port"
5f4533
+  portal=${p%,*}
5f4533
+  transport=${t%:}
5f4533
+
5f4533
+  $ISCSIADM -m node -p $portal -T $target -o update -n node.startup -v onboot
5f4533
+
5f4533
+  start_iscsid=1
5f4533
+
5f4533
+  if [ "$transport" = bnx2i ] || [ "$transport" = qedi ]; then
5f4533
+    start_iscsiuio=1
5f4533
+  fi
5f4533
+done < <( $ISCSIADM -m session )
5f4533
+
5f4533
+# force iscsid and iscsiuio to start if needed for
5f4533
+# recovering sessions created in the initrd
5f4533
+
5f4533
+if [ "$start_iscsid" -eq 1 ]; then
5f4533
+  systemctl --no-block start iscsid.service
5f4533
+fi
5f4533
+if [ "$start_iscsiuio" -eq 1 ]; then
5f4533
+  systemctl --no-block start iscsiuio.service
5f4533
+fi
5f4533
+
5f4533
diff --git a/etc/systemd/iscsi-shutdown.service b/etc/systemd/iscsi-shutdown.service
5f4533
new file mode 100644
5f4533
index 0000000..69c1c77
5f4533
--- /dev/null
5f4533
+++ b/etc/systemd/iscsi-shutdown.service
5f4533
@@ -0,0 +1,14 @@
5f4533
+[Unit]
5f4533
+Description=Logout off all iSCSI sessions on shutdown
5f4533
+Documentation=man:iscsid(8) man:iscsiadm(8)
5f4533
+DefaultDependencies=no
5f4533
+Conflicts=shutdown.target
5f4533
+After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service
5f4533
+Before=remote-fs-pre.target
5f4533
+Wants=remote-fs-pre.target
5f4533
+RefuseManualStop=yes
5f4533
+
5f4533
+[Service]
5f4533
+Type=oneshot
5f4533
+RemainAfterExit=true
5f4533
+ExecStop=-/usr/sbin/iscsiadm -m node --logoutall=all
5f4533
diff --git a/etc/systemd/iscsi.service b/etc/systemd/iscsi.service
5f4533
index e475888..eadfcec 100644
5f4533
--- a/etc/systemd/iscsi.service
5f4533
+++ b/etc/systemd/iscsi.service
5f4533
@@ -1,18 +1,21 @@
5f4533
 [Unit]
5f4533
 Description=Login and scanning of iSCSI devices
5f4533
-Documentation=man:iscsiadm(8) man:iscsid(8)
5f4533
-Before=remote-fs.target
5f4533
-After=network.target network-online.target iscsid.service
5f4533
-Requires=iscsid.service
5f4533
-ConditionPathExists=/etc/iscsi/initiatorname.iscsi
5f4533
+Documentation=man:iscsid(8) man:iscsiadm(8)
5f4533
+DefaultDependencies=no
5f4533
+Conflicts=shutdown.target
5f4533
+After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service
5f4533
+Before=remote-fs-pre.target
5f4533
+Wants=remote-fs-pre.target iscsi-shutdown.service
5f4533
+ConditionDirectoryNotEmpty=|/var/lib/iscsi/nodes
5f4533
+ConditionDirectoryNotEmpty=|/sys/class/iscsi_session
5f4533
 
5f4533
 [Service]
5f4533
 Type=oneshot
5f4533
-ExecStart=/sbin/iscsiadm -m node --loginall=automatic
5f4533
-ExecStop=/sbin/iscsiadm -m node --logoutall=automatic
5f4533
-ExecStop=/sbin/iscsiadm -m node --logoutall=manual
5f4533
-SuccessExitStatus=21
5f4533
 RemainAfterExit=true
5f4533
+ExecStart=-/usr/libexec/iscsi-mark-root-nodes
5f4533
+ExecStart=-/usr/sbin/iscsiadm -m node --loginall=automatic
5f4533
+ExecReload=-/usr/sbin/iscsiadm -m node --loginall=automatic
5f4533
+SuccessExitStatus=21
5f4533
 
5f4533
 [Install]
5f4533
-WantedBy=remote-fs.target
5f4533
+WantedBy=sysinit.target
5f4533
diff --git a/etc/systemd/iscsid.service b/etc/systemd/iscsid.service
5f4533
index 4fef168..8d50cf0 100644
5f4533
--- a/etc/systemd/iscsid.service
5f4533
+++ b/etc/systemd/iscsid.service
5f4533
@@ -1,14 +1,16 @@
5f4533
 [Unit]
5f4533
 Description=Open-iSCSI
5f4533
-Documentation=man:iscsid(8) man:iscsiuio(8) man:iscsiadm(8)
5f4533
+Documentation=man:iscsid(8) man:iscsiadm(8)
5f4533
 DefaultDependencies=no
5f4533
+Conflicts=shutdown.target
5f4533
 After=network.target iscsiuio.service
5f4533
 Before=remote-fs-pre.target
5f4533
 
5f4533
 [Service]
5f4533
 Type=notify
5f4533
 NotifyAccess=main
5f4533
-ExecStart=/sbin/iscsid -f
5f4533
+ExecStart=/usr/sbin/iscsid -f
5f4533
+ExecStop=/usr/sbin/iscsiadm -k 0 2
5f4533
 KillMode=mixed
5f4533
 Restart=on-failure
5f4533
 
5f4533
diff --git a/etc/systemd/iscsiuio.service b/etc/systemd/iscsiuio.service
5f4533
index e4d9fd0..8620cde 100644
5f4533
--- a/etc/systemd/iscsiuio.service
5f4533
+++ b/etc/systemd/iscsiuio.service
5f4533
@@ -11,7 +11,7 @@ Before=remote-fs-pre.target iscsid.service
5f4533
 [Service]
5f4533
 Type=notify
5f4533
 NotifyAccess=main
5f4533
-ExecStart=/sbin/iscsiuio -f
5f4533
+ExecStart=/usr/sbin/iscsiuio -f
5f4533
 KillMode=mixed
5f4533
 Restart=on-failure
5f4533
 
5f4533
-- 
5f4533
2.21.0
5f4533