[GIT PULL] ktest.pl: Fix incorrect reboot for grub2bls

From: Steven Rostedt
Date: Thu Dec 10 2020 - 19:51:36 EST


Linus,

Fix issues with grub2bls in ktest.pl

ktest.pl does not know about grub2bls that was introduced in Fedora 30,
and now it does.


Please pull the latest ktest-v5.10-rc6 tree, which can be found at:


git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-ktest.git
ktest-v5.10-rc6

Tag SHA1: 5df55c97b33392ad11775afce8d327736de49fba
Head SHA1: 271e0c9dce1b02a825b3cc1a7aa1fab7c381d44b


Libo Chen (1):
ktest.pl: Fix incorrect reboot for grub2bls

----
tools/testing/ktest/ktest.pl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
---------------------------
commit 271e0c9dce1b02a825b3cc1a7aa1fab7c381d44b
Author: Libo Chen <libo.chen@xxxxxxxxxx>
Date: Fri Nov 20 18:12:43 2020 -0800

ktest.pl: Fix incorrect reboot for grub2bls

This issue was first noticed when I was testing different kernels on
Oracle Linux 8 which as Fedora 30+ adopts BLS as default. Even though a
kernel entry was added successfully and the index of that kernel entry was
retrieved correctly, ktest still wouldn't reboot the system into
user-specified kernel.

The bug was spotted in subroutine reboot_to where the if-statement never
checks for REBOOT_TYPE "grub2bls", therefore the desired entry will not be
set for the next boot.

Add a check for "grub2bls" so that $grub_reboot $grub_number can
be run before a reboot if REBOOT_TYPE is "grub2bls" then we can boot to
the correct kernel.

Link: https://lkml.kernel.org/r/20201121021243.1532477-1-libo.chen@xxxxxxxxxx

Cc: stable@xxxxxxxxxxxxxxx
Fixes: ac2466456eaa ("ktest: introduce grub2bls REBOOT_TYPE option")
Signed-off-by: Libo Chen <libo.chen@xxxxxxxxxx>
Signed-off-by: Steven Rostedt (VMware) <rostedt@xxxxxxxxxxx>

diff --git a/tools/testing/ktest/ktest.pl b/tools/testing/ktest/ktest.pl
index cb16d2aac51c..54188ee16c48 100755
--- a/tools/testing/ktest/ktest.pl
+++ b/tools/testing/ktest/ktest.pl
@@ -2040,7 +2040,7 @@ sub reboot_to {

if ($reboot_type eq "grub") {
run_ssh "'(echo \"savedefault --default=$grub_number --once\" | grub --batch)'";
- } elsif ($reboot_type eq "grub2") {
+ } elsif (($reboot_type eq "grub2") or ($reboot_type eq "grub2bls")) {
run_ssh "$grub_reboot $grub_number";
} elsif ($reboot_type eq "syslinux") {
run_ssh "$syslinux --once \\\"$syslinux_label\\\" $syslinux_path";