1
0
Fork 0
tuned/92-tuned.install
Javier Martinez Canillas 33d5386919
Don't modify the BLS snippets on s390x
Currently the 92-tuned.install kernel-install plugin adds the tuned params
to the BLS config files in s390x machines. But the zipl bootloader doesn't
have support for variables, which leads to cmdlines like the following:

root=/dev/mapper/rhel-root crashkernel=auto rd.dasd=0.0.541f rd.dasd=0.0.551f
rd.dasd=0.0.561f rd.dasd=0.0.571f rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap
cio_ignore=all,!condev rd.znet=qeth,0.0.0600,0.0.0601,0.0.0602,layer2=1,portno=0
$tuned_params BOOT_IMAGE=0

Don't modify the BLS snippet since the zipl bootloader doesn't support the
variables and just make the script to exit if the architecture is s390x.

Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
2020-04-29 19:45:06 +02:00

35 lines
839 B
Bash

#!/bin/bash
COMMAND="$1"
KERNEL_VERSION="$2"
BOOT_DIR_ABS="$3"
KERNEL_IMAGE="$4"
if ! [[ $KERNEL_INSTALL_MACHINE_ID ]]; then
exit 0
fi
MACHINE_ID=$KERNEL_INSTALL_MACHINE_ID
# with grub2 always /boot
BOOT_ROOT="/boot"
LOADER_ENTRIES="$BOOT_ROOT/loader/entries"
[ -d "$LOADER_ENTRIES" ] || exit 0
[ "$COMMAND" = "add" ] || exit 0
# The zipl bootloader doesn't support variables
ARCH=`uname -m`
[ "${ARCH:0:4}" = "s390" ] && exit 0
pushd "$LOADER_ENTRIES" &> /dev/null
for f in `basename "$MACHINE_ID"`-*.conf; do
if [ -f "$f" -a "${f: -12}" != "-rescue.conf" ]; then
grep -q '^\s*options\s\+.*\$tuned_params' "$f" || sed -i '/^\s*options\s\+/ s/\(.*\)/\1 \$tuned_params/' "$f"
grep -q '^\s*initrd\s\+.*\$tuned_initrd' "$f" || sed -i '/^\s*initrd\s\+/ s/\(.*\)/\1 \$tuned_initrd/' "$f"
fi
done
popd &> /dev/null
exit 0