File 0086-95zfcp_rules-Auto-generate-udev-rule-for-ipl-device.patch of Package dracut.892

From 754bda4bcf9698837802b31bd74061702edf6c8c Mon Sep 17 00:00:00 2001
From: Hannes Reinecke <hare@suse.de>
Date: Thu, 26 Jun 2014 14:01:33 +0200
Subject: 95zfcp_rules: Auto-generate udev rule for ipl device

We should auto-generate an udev rule for the ipl device; it'll be
enabled anyway.

Signed-off-by: Hannes Reinecke <hare@suse.de>
---
 modules.d/95zfcp_rules/parse-zfcp.sh | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)

diff --git a/modules.d/95zfcp_rules/parse-zfcp.sh b/modules.d/95zfcp_rules/parse-zfcp.sh
index bb5cd3a..05c1ed0 100755
--- a/modules.d/95zfcp_rules/parse-zfcp.sh
+++ b/modules.d/95zfcp_rules/parse-zfcp.sh
@@ -41,6 +41,17 @@ EOF
     fi
 }
 
+if [[ -f /sys/firmware/ipl/ipl_type &&
+            $(</sys/firmare/ipl/ipl_type) = "fcp" ]] ; then
+    (
+        local _wwpn=$(cat /sys/firmware/ipl/wwpn)
+        local _lun=$(cat /sys/firmware/ipl/lun)
+        local _ccw=$(cat /sys/firmware/ipl/device)
+
+        create_udev_rule $_ccw $_wwpn $_lun
+    )
+fi
+
 for zfcp_arg in $(getargs rd.zfcp); do
     (
         local IFS=","
@@ -51,6 +62,9 @@ done
 
 for zfcp_arg in $(getargs root=) $(getargs resume=); do
     (
+        local _wwpn
+        local _lun
+
         case $zfcp_arg in
             /dev/disk/by-path/ccw-*)
                 ccw_arg=${zfcp_arg##*/}
@@ -61,8 +75,8 @@ for zfcp_arg in $(getargs root=) $(getargs resume=); do
             IFS="-"
             set -- $ccw_arg
             IFS="$OLDIFS"
-            wwpn=${4%:*}
-            lun=${4#*:}
+            _wwpn=${4%:*}
+            _lun=${4#*:}
             create_udev_rule $2 $wwpn $lun
         fi
     )
-- 
1.8.4.5