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

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(-)

Index: dracut-042/modules.d/95zfcp_rules/parse-zfcp.sh
===================================================================
--- dracut-042.orig/modules.d/95zfcp_rules/parse-zfcp.sh	2015-06-24 18:02:11.461491574 +0200
+++ dracut-042/modules.d/95zfcp_rules/parse-zfcp.sh	2015-06-24 18:02:12.041524595 +0200
@@ -39,6 +39,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
     (
         IFS=","
@@ -49,6 +60,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##*/}
@@ -57,8 +71,8 @@ for zfcp_arg in $(getargs root=) $(getar
         if [ -n "$ccw_arg" ] ; then
             IFS="-"
             set -- $ccw_arg
-            wwpn=${4%:*}
-            lun=${4#*:}
+            _wwpn=${4%:*}
+            _lun=${4#*:}
             create_udev_rule $2 $wwpn $lun
         fi
     )