101 lines
3.5 KiB
Diff
101 lines
3.5 KiB
Diff
|
From 1ff6be8aef787513b8143df444a1dd2d696b0944 Mon Sep 17 00:00:00 2001
|
||
|
From: Steffen Maier <maier@linux.ibm.com>
|
||
|
Date: Thu, 23 Mar 2023 19:33:52 +0100
|
||
|
Subject: [PATCH 12/23] feat(dasd): minimize dasd handling consolidated in
|
||
|
s390-tools
|
||
|
|
||
|
Parsing of rd.dasd is handled by s390-tools zdev dracut module 95zdev as of
|
||
|
https://github.com/ibm-s390-linux/s390-tools/commit/99270236805972544932feab9692ee7122a343b8
|
||
|
("zdev/dracut: add rd.dasd cmdline option handling").
|
||
|
|
||
|
Even though this removes the last implementation of parsing rd.dasd in
|
||
|
dracut, above s390-tools change introduces another implementation of
|
||
|
parsing the exact same rd.dasd 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/dasd.conf.
|
||
|
The corresponding call to dasd_cio_free is in 95dasd_mod/parse-dasd-mod.sh
|
||
|
and indirectly triggers processing of /etc/dasd.conf even with the typical
|
||
|
cio_ignore kernel boot parameter ignoring most devices.
|
||
|
|
||
|
Preparation for consolidating persistent configuration with zdev.
|
||
|
|
||
|
Signed-off-by: Steffen Maier <maier@linux.ibm.com>
|
||
|
---
|
||
|
man/dracut.cmdline.7.asc | 11 ++++++++++-
|
||
|
modules.d/95dasd/module-setup.sh | 6 ++----
|
||
|
modules.d/95dasd/parse-dasd.sh | 11 -----------
|
||
|
3 files changed, 12 insertions(+), 16 deletions(-)
|
||
|
delete mode 100755 modules.d/95dasd/parse-dasd.sh
|
||
|
|
||
|
diff --git a/man/dracut.cmdline.7.asc b/man/dracut.cmdline.7.asc
|
||
|
index 01bdf10f..c31dbfc6 100644
|
||
|
--- a/man/dracut.cmdline.7.asc
|
||
|
+++ b/man/dracut.cmdline.7.asc
|
||
|
@@ -973,7 +973,16 @@ root=virtiofs:host rw
|
||
|
DASD
|
||
|
~~~~
|
||
|
**rd.dasd=**....::
|
||
|
- same syntax as the kernel module parameter (s390 only)
|
||
|
+ same syntax as the kernel module parameter (s390 only).
|
||
|
+ For more details on the syntax see the IBM book
|
||
|
+ "Linux on IBM Z and IBM LinuxONE - Device Drivers, Features, and Commands"
|
||
|
+ https://www.ibm.com/docs/en/linux-on-systems?topic=overview-device-drivers-features-commands.
|
||
|
+ This parameter can be specified multiple times.
|
||
|
++
|
||
|
+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.
|
||
|
|
||
|
ZFCP
|
||
|
~~~~
|
||
|
diff --git a/modules.d/95dasd/module-setup.sh b/modules.d/95dasd/module-setup.sh
|
||
|
index 180da140..825f95d8 100755
|
||
|
--- a/modules.d/95dasd/module-setup.sh
|
||
|
+++ b/modules.d/95dasd/module-setup.sh
|
||
|
@@ -4,20 +4,18 @@
|
||
|
check() {
|
||
|
local _arch=${DRACUT_ARCH:-$(uname -m)}
|
||
|
[ "$_arch" = "s390" -o "$_arch" = "s390x" ] || return 1
|
||
|
- require_binaries normalize_dasd_arg || return 1
|
||
|
+ require_binaries dasdconf.sh || return 1
|
||
|
return 0
|
||
|
}
|
||
|
|
||
|
# called by dracut
|
||
|
depends() {
|
||
|
- echo "dasd_mod"
|
||
|
return 0
|
||
|
}
|
||
|
|
||
|
# called by dracut
|
||
|
install() {
|
||
|
- inst_hook cmdline 30 "$moddir/parse-dasd.sh"
|
||
|
- inst_multiple dasdinfo dasdconf.sh normalize_dasd_arg
|
||
|
+ inst_multiple dasdconf.sh
|
||
|
conf=/etc/dasd.conf
|
||
|
if [[ $hostonly && -f $conf ]]; then
|
||
|
inst -H $conf
|
||
|
diff --git a/modules.d/95dasd/parse-dasd.sh b/modules.d/95dasd/parse-dasd.sh
|
||
|
deleted file mode 100755
|
||
|
index cda3970c..00000000
|
||
|
--- a/modules.d/95dasd/parse-dasd.sh
|
||
|
+++ /dev/null
|
||
|
@@ -1,11 +0,0 @@
|
||
|
-#!/bin/sh
|
||
|
-for dasd_arg in $(getargs rd.dasd= -d rd_DASD= DASD=); do
|
||
|
- (
|
||
|
- local OLDIFS="$IFS"
|
||
|
- IFS=","
|
||
|
- # shellcheck disable=SC2086
|
||
|
- set -- $dasd_arg
|
||
|
- IFS="$OLDIFS"
|
||
|
- echo "$@" | normalize_dasd_arg >> /etc/dasd.conf
|
||
|
- )
|
||
|
-done
|
||
|
--
|
||
|
2.42.0
|
||
|
|