|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
From 86b6e2979999cf5ecce8c76c6230d1f085b3a333 Mon Sep 17 00:00:00 2001
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
From: Steffen Maier <maier@linux.ibm.com>
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
Date: Tue, 25 Jul 2023 19:43:05 +0200
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
Subject: [PATCH 13/23] feat(znet): use zdev for consolidated device
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
configuration
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
Remove any distribution-specifics from s390 channel-attached network device
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
configuration.
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
Similar to 95qeth_rules, copy the existing persistent network configuration
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
into the initrd. This needs to go via chzdev import so chzdev updates (adds
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
to) the cio_ignore persistent config inside the initrd, because other
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
dracut modules such as zdev from s390-tools also import
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
persistent (non-network) config into initrd and the set union of devices
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
needs to end up in the cio_ignore persistent config inside the initrd.
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
Additional debugging output can be generated with e.g. dracut option
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
"--stdlog 5" (or short -L5). It shows the chzdev export result, the output
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
of chzdev imports, and an overview of the resulting persistent config
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
within the initrd. Typically combined with "--debug" to get a shell trace
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
from building an initrd (Note: --debug does not increase the log levels).
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
Note that nm-initrd-generator also parses rd.znet and rd.znet_ifname
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
to fill in s390 options of a NetworkManager connection definition.
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
Signed-off-by: Steffen Maier <maier@linux.ibm.com>
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
---
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
modules.d/95znet/module-setup.sh | 37 +++++++++++++++++++++++--
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
modules.d/95znet/parse-ccw.sh | 47 ++++++++++++++++++++++++++++++--
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
2 files changed, 78 insertions(+), 6 deletions(-)
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
diff --git a/modules.d/95znet/module-setup.sh b/modules.d/95znet/module-setup.sh
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
index df37c660..95164bba 100755
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
--- a/modules.d/95znet/module-setup.sh
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+++ b/modules.d/95znet/module-setup.sh
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
@@ -5,7 +5,7 @@ check() {
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
arch=${DRACUT_ARCH:-$(uname -m)}
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
[ "$arch" = "s390" -o "$arch" = "s390x" ] || return 1
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
- require_binaries znet_cio_free grep sed seq readlink || return 1
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ require_binaries grep sed seq readlink chzdev || return 1
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
return 0
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
}
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
@@ -24,6 +24,37 @@ installkernel() {
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
# called by dracut
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
install() {
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
inst_hook cmdline 30 "$moddir/parse-ccw.sh"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
- inst_rules 81-ccw.rules
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
- inst_multiple znet_cio_free grep sed seq readlink /lib/udev/ccw_init
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ inst_multiple grep sed seq readlink chzdev
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ if [[ $hostonly ]]; then
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ local _tempfile
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ _tempfile=$(mktemp --tmpdir="${DRACUT_TMPDIR}" dracut-zdev.XXXXXX)
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ {
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ chzdev qeth --export - --configured --persistent --quiet --type
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ chzdev lcs --export - --configured --persistent --quiet --type
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ chzdev ctc --export - --configured --persistent --quiet --type
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ } 2> /dev/null > "$_tempfile"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ ddebug < "$_tempfile"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ chzdev --import "$_tempfile" --persistent --base "/etc=$initdir/etc" \
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ --yes --no-root-update --force 2>&1 | ddebug
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ lszdev --configured --persistent --info \
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ --base "/etc=$initdir/etc" 2>&1 | ddebug
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ rm -f "$_tempfile"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ # these are purely generated udev rules so we have to glob expand
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ # within $initdir and strip the $initdir prefix for mark_hostonly
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ local -a _array
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ # shellcheck disable=SC2155
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ local _nullglob=$(shopt -p nullglob)
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ shopt -u nullglob
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ # shellcheck disable=SC2086
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ readarray -t _array < <(
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ ls -1 $initdir/etc/udev/rules.d/41-*.rules 2> /dev/null
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ )
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ [[ ${#_array[@]} -gt 0 ]] && mark_hostonly "${_array[@]#$initdir}"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ # shellcheck disable=SC2086
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ readarray -t _array < <(
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ ls -1 $initdir/etc/modprobe.d/s390x-*.conf 2> /dev/null
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ )
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ [[ ${#_array[@]} -gt 0 ]] && mark_hostonly "${_array[@]#$initdir}"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ $_nullglob
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ fi
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
}
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
diff --git a/modules.d/95znet/parse-ccw.sh b/modules.d/95znet/parse-ccw.sh
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
index d8953605..aacc988e 100755
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
--- a/modules.d/95znet/parse-ccw.sh
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+++ b/modules.d/95znet/parse-ccw.sh
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
@@ -1,7 +1,50 @@
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
#!/bin/bash
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+znet_base_args="--no-settle --yes --no-root-update --force"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+# at this point in time dracut's vinfo() only logs to journal which is hard for
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+# s390 users to find and access on a line mode console such as 3215 mode
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+# so use a vinfo alternative that still prints to the console via kmsg
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+znet_vinfo() {
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ while read -r _znet_vinfo_line || [ -n "$_znet_vinfo_line" ]; do
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ # Prefix "<30>" represents facility LOG_DAEMON 3 and loglevel INFO 6:
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ # (facility << 3) | level.
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ echo "<30>dracut: $_znet_vinfo_line" > /dev/kmsg
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ done
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+}
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
for ccw_arg in $(getargs rd.ccw -d 'rd_CCW=') $(getargs rd.znet -d 'rd_ZNET='); do
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
- echo "$ccw_arg" >> /etc/ccw.conf
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ (
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ SAVED_IFS="$IFS"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ IFS=","
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ # shellcheck disable=SC2086
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ set -- $ccw_arg
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ IFS="$SAVED_IFS"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ type="$1"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ subchannel1="$2"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ subchannel2="$3"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ subchannel3="$4"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ echo "rd.znet ${ccw_arg} :" | znet_vinfo
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ if [ "$#" -lt 3 ]; then
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ echo "rd.znet needs at least 3 list items: type,subchannel1,subchannel2" | znet_vinfo
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ fi
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ if [ "$1" = "qeth" ]; then
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ if [ "$#" -lt 4 ]; then
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ echo "rd.znet for type qeth needs at least 4 list items: qeth,subchannel1,subchannel2,subchannel3" | znet_vinfo
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ fi
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ subchannels="$subchannel1:$subchannel2:$subchannel3"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ shift 4
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ # shellcheck disable=SC2086
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ chzdev --enable --persistent $znet_base_args \
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ "$type" "$subchannels" "$@" 2>&1 | znet_vinfo
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ else
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ subchannels="$subchannel1:$subchannel2"
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ shift 3
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ # shellcheck disable=SC2086
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ chzdev --enable --persistent $znet_base_args \
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ "$type" "$subchannels" "$@" 2>&1 | znet_vinfo
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ fi
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
+ )
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
done
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
for ifname in $(getargs rd.znet_ifname); do
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
@@ -21,5 +64,3 @@ for ifname in $(getargs rd.znet_ifname); do
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
} > /etc/udev/rules.d/81-ccw-ifname.rules
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
fi
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
done
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
-
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
-znet_cio_free
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
--
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
2.42.0
|
|
![](https://seccdn.libravatar.org/avatar/3a5fa1fe3bfc3cae8a913e3a8103def8604dec759d00a279c65dfe5a8b1f6369?s=16&d=retro) |
218d2d |
|