1bf31c
From 0e43b934b98e40efeed0781e8bdf9f805d8d7217 Mon Sep 17 00:00:00 2001
1bf31c
From: Javier Martinez Canillas <javierm@redhat.com>
1bf31c
Date: Tue, 5 May 2020 19:11:18 +0200
1bf31c
Subject: [PATCH] 51-dracut-rescue.install: Don't use BLS fragment shipped by
1bf31c
 kernel package
1bf31c
1bf31c
For the GRUB and zipl bootloaders the BLS fragment that is shipped by the
1bf31c
kernel package is used, so the same fragment is used for the rescue entry.
1bf31c
1bf31c
But there are cases where this BLS fragment is not suitable. For example,
1bf31c
if the boot directory is on a btrfs subvolume the path in the linux and
1bf31c
initrd fiels need to be adjusted with the real path. Otherwise GRUB won't
1bf31c
be able to read them.
1bf31c
1bf31c
The GRUB and zipl kernel-install plugins already take care of this before
1bf31c
installing the BLS fragments, so just copy the installed fragment that has
1bf31c
the updated paths instead of using the BLS shipped by the kernel package.
1bf31c
1bf31c
Resolves: rhbz#1827882
1bf31c
1bf31c
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
1bf31c
(cherry picked from commit ff366790a6e30175f243d54c2922a8c781030ede)
1bf31c
1bf31c
Resolves: #1894026
1bf31c
---
1bf31c
 51-dracut-rescue.install | 6 +++++-
1bf31c
 1 file changed, 5 insertions(+), 1 deletion(-)
1bf31c
1bf31c
diff --git a/51-dracut-rescue.install b/51-dracut-rescue.install
1bf31c
index 5ac34ef3..47eb8e7d 100755
1bf31c
--- a/51-dracut-rescue.install
1bf31c
+++ b/51-dracut-rescue.install
1bf31c
@@ -104,7 +104,11 @@ case "$COMMAND" in
1bf31c
                 echo "initrd     $BOOT_DIR/initrd"
1bf31c
             } > $LOADER_ENTRY
1bf31c
         else
1bf31c
-            cp -aT "${KERNEL_IMAGE%/*}/bls.conf" $LOADER_ENTRY
1bf31c
+            if [[ -e "${BLS_DIR}/${MACHINE_ID}-${KERNEL_VERSION}.conf" ]]; then
1bf31c
+                cp -aT "${BLS_DIR}/${MACHINE_ID}-${KERNEL_VERSION}.conf" $LOADER_ENTRY
1bf31c
+            else
1bf31c
+                cp -aT "${KERNEL_IMAGE%/*}/bls.conf" $LOADER_ENTRY
1bf31c
+            fi
1bf31c
             sed -i 's/'$KERNEL_VERSION'/0-rescue-'${MACHINE_ID}'/' $LOADER_ENTRY
1bf31c
         fi
1bf31c
 
1bf31c