dracut/0012-feat-dasd-minimize-dasd-handling-consolidated-in-s39.patch
Pavel Valena e4f609fba2 Update to dracut 101
From-source-git-commit: a24e1272faba2875f9b78fcf42109028af0869bc

 * switch to dracut-ng upstream fork

The original dracut repository is no longer maintained, new initiative was started:
https://github.com/dracut-ng/dracut-ng/

 * applied additional fixes

9df3cb58a19f38157a615c311356cfd6ae55d2d7 fix(rngd): install system service file
0b65ac224d831cc96da940cce510523c7276a5ec feat(hwdb): add hwdb module to install hwdb.bin on demand
10b86edba3ffe0ce13c5f43ff0193cdf04661358 fix(nvmf): move /etc/nvme/host{nqn,id} requirement to hostonly
bad2bc80cdcfac8915374497cc47ce9d5670d015 fix(systemd): explicitly install some libs that will not be statically included
55a56c546bde71fb42c99aadd96e98fca2199823 fix(dracut): move hooks directory from /usr/lib to /var/lib
110fec3e41faf47277447f1c56635c5a876c1f96 feat(ifcfg): minimize s390-specific network configuration aspects
b6913f66b6c9e9ea81fd0832405c170876bc993a refactor(ifcfg): delete code duplication using iface_get_subchannels()
cbc5eece88b8f6d0e69fdfbb8f34eabb45425c86 fix(znet): append to udev rules so each rd.znet_ifname is effective
7ad6fef8fe110093939c422b5c3b381ebe47e4e9 feat(qeth_rules): remove qeth handling consolidated in 95znet
addb383b375fd0db07eacf8a9f5d9b4e23343855 docs(dracut.cmdline): generalize description of rd.znet
86b6e2979999cf5ecce8c76c6230d1f085b3a333 feat(znet): use zdev for consolidated device configuration
1ff6be8aef787513b8143df444a1dd2d696b0944 feat(dasd): minimize dasd handling consolidated in s390-tools
a82045ef34bc8c913502eba37b6b9c60709d6997 feat(dasd_mod): minimize dasd handling consolidated in s390-tools
7294e45b5204e47bb8ee2108e2c38c5843e64fac feat(dasd_rules): remove dasd handling consolidated in s390-tools
8d6098969aa9dc34edfd1bc96e6aa0384ae2fb99 feat(zfcp): minimize zfcp handling consolidated in s390-tools
71876ea8c73090741bdf26abb89c28fb260ed575 feat(zfcp_rules): remove zfcp handling consolidated in s390-tools
a2c1fc530d8bcbdeaf1806f4a22019052715fc98 refactor(cms): remove now unnecessary inclusion of full s390utils-base
cc14fe218861f2855ca88ad03220ecb78d4aa31a refactor(cms): use consolidated network config with zdev from s390-tools
74edb9758da26ef063e4686a595f1d34f07f86f7 refactor(cms): use consolidated dasd config with zdev from s390-tools
3a9b9a5cf507a868f8b3ec33cf686b3a552286c2 refactor(cms): use consolidated zfcp config with zdev from s390-tools
38412977daad049b12273966300d07211674834e refactor(cms): use zdev to simplify handling CMSDASD=... boot option

(Possibly also resolves other open issues.)

Resolves: RHEL-26887 RHEL-34954 RHEL-35521
2024-05-16 19:11:40 +02:00

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