2abe1f9
From c769948e31e7d6239e792ed4e8f60b293811421b Mon Sep 17 00:00:00 2001
fbd8563
From: Chris Leech <cleech@redhat.com>
fbd8563
Date: Wed, 26 Feb 2014 16:33:48 -0800
929689a
Subject: [PATCH] update handling of boot sessions
fbd8563
fbd8563
force start iscsiuio if needed, socket activation does not seem to be
fbd8563
working for recovery
fbd8563
---
fbd8563
 etc/systemd/iscsi-mark-root-nodes | 29 +++++++++++++++++++++++------
fbd8563
 1 file changed, 23 insertions(+), 6 deletions(-)
fbd8563
fbd8563
diff --git a/etc/systemd/iscsi-mark-root-nodes b/etc/systemd/iscsi-mark-root-nodes
929689a
index 157be62..60dcd70 100644
fbd8563
--- a/etc/systemd/iscsi-mark-root-nodes
fbd8563
+++ b/etc/systemd/iscsi-mark-root-nodes
fbd8563
@@ -1,13 +1,30 @@
fbd8563
 #!/bin/bash
fbd8563
 
fbd8563
 ISCSIADM=/sbin/iscsiadm
fbd8563
+start_iscsid=0
fbd8563
+start_iscsiuio=0
fbd8563
 
fbd8563
-$ISCSIADM -m session >/dev/null 2>&1 || exit 0
fbd8563
+while read t num p target flash; do
fbd8563
+  # strip tag number from portal, keep "ip:port"
fbd8563
+  portal=${p%,*}
fbd8563
+  transport=${t%:}
fbd8563
 
fbd8563
-$ISCSIADM -m session | while read t num i target; do
fbd8563
-  ip=${i%:*}
fbd8563
-  $ISCSIADM -m node -p $ip -T $target -o update -n node.startup -v onboot
fbd8563
-done
fbd8563
+  $ISCSIADM -m node -p $portal -T $target -o update -n node.startup -v onboot
fbd8563
 
fbd8563
-systemctl start iscsid.service
fbd8563
+  start_iscsid=1
fbd8563
+
fbd8563
+  if [ "$transport" = bnx2i ]; then
fbd8563
+    start_iscsiuio=1
fbd8563
+  fi
fbd8563
+done < <( $ISCSIADM -m session )
fbd8563
+
fbd8563
+# force iscsid and iscsiuio to start if needed for
fbd8563
+# recovering sessions created in the initrd
fbd8563
+
fbd8563
+if [ "$start_iscsid" -eq 1 ]; then
fbd8563
+  systemctl --no-block start iscsid.service
fbd8563
+fi
fbd8563
+if [ "$start_iscsiuio" -eq 1 ]; then
fbd8563
+  systemctl --no-block start iscsiuio.service
fbd8563
+fi
fbd8563
 
fbd8563
-- 
929689a
2.1.0
fbd8563