- fix(dracut): rework timeout for devices added via --mount and --add-device
- fix(base): escape die() message in emergency hook script
- fix(base): replace eval with safe variable indirection in splitsep and export_n
- refactor(cms): use zdev to simplify handling CMSDASD=... boot option
- refactor(cms): use consolidated dasd config with zdev from s390-tools
- fix(qemu): add missing bochs module explicitly
Resolves: RHEL-151848,RHEL-210940,RHEL-212601,RHEL-217597
84 lines
2.9 KiB
Diff
84 lines
2.9 KiB
Diff
From c5997ed914de814eb0a616165a9947affee616a3 Mon Sep 17 00:00:00 2001
|
|
From: Steffen Maier <maier@linux.ibm.com>
|
|
Date: Wed, 24 May 2023 19:04:48 +0200
|
|
Subject: [PATCH] refactor(cms): use consolidated dasd config with zdev from
|
|
s390-tools
|
|
|
|
Depends on https://github.com/ibm-s390-linux/s390-tools commit
|
|
9b2fb1d4d2e2 ("zdev: add helper to convert from dasd_mod.dasd to zdev
|
|
config").
|
|
|
|
This is just internal to initrd, so it's possible to migrate the code to
|
|
consolidated dasd device configuration with zdev
|
|
https://github.com/ibm-s390-linux/s390-tools/tree/master/zdev/.
|
|
The code change is transparent to users after dracut switch root.
|
|
|
|
The generated persistent config of chzdev are pure udev rules so it has no
|
|
dependency on other dracut modules such as zdev, dasd, or dasd_mod.
|
|
Instead now install the corresponding kernel device drivers here directly.
|
|
|
|
Signed-off-by: Steffen Maier <maier@linux.ibm.com>
|
|
|
|
(cherry picked from commit 168c0c667d0fb14a8565e999c367494c85c7262c)
|
|
|
|
Resolves: RHEL-151848
|
|
---
|
|
modules.d/80cms/cmssetup.sh | 6 +++---
|
|
modules.d/80cms/module-setup.sh | 6 +++---
|
|
2 files changed, 6 insertions(+), 6 deletions(-)
|
|
|
|
diff --git a/modules.d/80cms/cmssetup.sh b/modules.d/80cms/cmssetup.sh
|
|
index 23e81ca98..b80ce23ab 100755
|
|
--- a/modules.d/80cms/cmssetup.sh
|
|
+++ b/modules.d/80cms/cmssetup.sh
|
|
@@ -1,6 +1,7 @@
|
|
#!/bin/bash
|
|
|
|
type getarg > /dev/null 2>&1 || . /lib/dracut-lib.sh
|
|
+type zdev_parse_dasd_list > /dev/null 2>&1 || . /lib/s390-tools/zdev-from-dasd_mod.dasd
|
|
|
|
function dasd_settle() {
|
|
local dasd_status
|
|
@@ -112,9 +113,8 @@ processcmsfile() {
|
|
fi
|
|
|
|
if [[ $DASD ]] && [[ $DASD != "none" ]]; then
|
|
- echo "$DASD" | normalize_dasd_arg > /etc/dasd.conf
|
|
- echo "options dasd_mod dasd=$DASD" > /etc/modprobe.d/dasd_mod.conf
|
|
- dasd_cio_free
|
|
+ echo "$DASD" | zdev_parse_dasd_list globals 2>&1 | vinfo
|
|
+ echo "$DASD" | zdev_parse_dasd_list ranges 2>&1 | vinfo
|
|
fi
|
|
|
|
unset _do_zfcp
|
|
diff --git a/modules.d/80cms/module-setup.sh b/modules.d/80cms/module-setup.sh
|
|
index 4872734b1..622d397e9 100755
|
|
--- a/modules.d/80cms/module-setup.sh
|
|
+++ b/modules.d/80cms/module-setup.sh
|
|
@@ -12,13 +12,13 @@ check() {
|
|
depends() {
|
|
arch=${DRACUT_ARCH:-$(uname -m)}
|
|
[ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
|
|
- echo znet zfcp dasd dasd_mod bash
|
|
+ echo znet zfcp bash
|
|
return 0
|
|
}
|
|
|
|
# called by dracut
|
|
installkernel() {
|
|
- instmods zfcp
|
|
+ instmods zfcp dasd_mod dasd_eckd_mod dasd_fba_mod dasd_diag_mod
|
|
}
|
|
|
|
# called by dracut
|
|
@@ -28,7 +28,7 @@ install() {
|
|
inst_script "$moddir/cmsifup.sh" /sbin/cmsifup
|
|
# shellcheck disable=SC2046
|
|
inst_multiple /etc/cmsfs-fuse/filetypes.conf /etc/udev/rules.d/99-fuse.rules /etc/fuse.conf \
|
|
- cmsfs-fuse fusermount bash insmod rmmod cat normalize_dasd_arg sed \
|
|
+ cmsfs-fuse fusermount bash insmod rmmod cat /lib/s390-tools/zdev-from-dasd_mod.dasd sed \
|
|
$(rpm -ql s390utils-base) awk getopt chzdev lszdev
|
|
|
|
inst_libdir_file "gconv/*"
|
|
|