]> git.ipfire.org Git - thirdparty/dracut-ng.git/commitdiff
feat(zfcp): minimize zfcp handling consolidated in s390-tools
authorSteffen Maier <maier@linux.ibm.com>
Tue, 31 Jan 2023 08:14:40 +0000 (09:14 +0100)
committerNeal Gompa (ニール・ゴンパ) <ngompa13@gmail.com>
Sat, 4 May 2024 02:36:51 +0000 (22:36 -0400)
Parsing of rd.zfcp is handled by s390-tools zdev dracut module 95zdev as of
https://github.com/ibm-s390-linux/s390-tools/commit/06a30ae529a5d6ad2369ed81da056bf3a6147bb6
("zdev/dracut: add rd.zfcp cmdline option handling").

Even though this removes the last implementation of parsing rd.zfcp in
dracut, above s390-tools change introduces another implementation of
parsing the exact same rd.zfcp syntax. Therefore, it would be good to keep
the documentation in man/dracut.cmdline.7 of dracut as one central place
describing all s390 device types that dracut handles.

For the time being, keep copying /etc/zfcp.conf.
Retain the call of zfcp_cio_free so /etc/zfcp.conf gets processed even
with the typical cio_ignore kernel boot parameter ignoring most devices.
Also keep handling rd.zfcp.conf=0 so users can, at boot time, ignore
/etc/zfcp.conf already copied into initrd.

Preparation for consolidating persistent configuration with zdev.

Signed-off-by: Steffen Maier <maier@linux.ibm.com>
man/dracut.cmdline.7.asc
modules.d/95zfcp/module-setup.sh
modules.d/95zfcp/parse-zfcp.sh

index 45f27deb54640d190c9002f2a51ac506d68003ba..40f5c98fe9a1678e164e429815307e99fc5c0a64 100644 (file)
@@ -980,12 +980,22 @@ ZFCP
 **rd.zfcp=**__<zfcp adaptor device bus ID>__,__<WWPN>__,__<FCPLUN>__::
     rd.zfcp can be specified multiple times on the kernel command
     line.
++
+NOTE:
+    This parameter is no longer handled by dracut itself but with the exact
+    same syntax by
+    https://github.com/ibm-s390-linux/s390-tools/tree/master/zdev/dracut/95zdev.
 
 **rd.zfcp=**__<zfcp adaptor device bus ID>__::
     If NPIV is enabled and the 'allow_lun_scan' parameter to the zfcp
-    module is set to 'Y' then the zfcp adaptor will be initiating a
+    module is set to 'Y' then the zfcp driver will be initiating a
     scan internally and the <WWPN> and <FCPLUN> parameters can be omitted.
 +
+NOTE:
+    This parameter is no longer handled by dracut itself but with the exact
+    same syntax by
+    https://github.com/ibm-s390-linux/s390-tools/tree/master/zdev/dracut/95zdev.
++
 [listing]
 .Example
 --
index e1f3aa35a01335f1cc5d52d7fa00aee16221e620..b547f9bc14a03c9e667e11dbb9512bb8ac5704a6 100755 (executable)
@@ -5,7 +5,7 @@ check() {
     arch=${DRACUT_ARCH:-$(uname -m)}
     [ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
 
-    require_binaries zfcp_cio_free grep sed seq || return 1
+    require_binaries zfcp_cio_free sed || return 1
 
     return 0
 }
@@ -23,7 +23,7 @@ installkernel() {
 # called by dracut
 install() {
     inst_hook cmdline 30 "$moddir/parse-zfcp.sh"
-    inst_multiple zfcp_cio_free grep sed seq
+    inst_multiple zfcp_cio_free sed
 
     inst_script /sbin/zfcpconf.sh
     inst_rules 56-zfcp.rules
index 495aa67fd0c63887ccb94c93efb58b82d73be425..41216dd9603527dc5b2e98699fa4f29e7cade710 100755 (executable)
@@ -2,15 +2,4 @@
 
 getargbool 1 rd.zfcp.conf -d -n rd_NO_ZFCPCONF || rm /etc/zfcp.conf
 
-for zfcp_arg in $(getargs rd.zfcp -d 'rd_ZFCP='); do
-    echo "$zfcp_arg" | grep '^0\.[0-9a-fA-F]\.[0-9a-fA-F]\{4\}\(,0x[0-9a-fA-F]\{16\},0x[0-9a-fA-F]\{16\}\)\?$' > /dev/null
-    test $? -ne 0 && die "For argument 'rd.zfcp=$zfcp_arg'\nSorry, invalid format."
-    (
-        IFS=","
-        # shellcheck disable=SC2086
-        set $zfcp_arg
-        echo "$@" >> /etc/zfcp.conf
-    )
-done
-
 zfcp_cio_free