From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Javier Martinez Canillas Date: Wed, 29 Apr 2020 20:08:27 +0200 Subject: [PATCH] blscfg: Lookup default_kernelopts variable as fallback for options The 10_linux script sets a variable that contains the kernel command line parameters. This is done so the entries will still have a kernel cmdline defined even if the grubenv can't be read. But older versions of the script used to set a default_kernelopts variable while newer versions just sets the kernelopts, which is what's defined in the BLS snippets. The blscfg module needs to keep looking for the default_kernelops since it may be that a user doesn't have a grubenv file and has an older grub.cfg that sets this variable instead of kernelopts. Resolves: rhbz#1765297 Signed-off-by: Javier Martinez Canillas --- grub-core/commands/blscfg.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/grub-core/commands/blscfg.c b/grub-core/commands/blscfg.c index 9263a5c1a02..4ec6504d9a4 100644 --- a/grub-core/commands/blscfg.c +++ b/grub-core/commands/blscfg.c @@ -759,6 +759,10 @@ static void create_entry (struct bls_entry *entry) title = bls_get_val (entry, "title", NULL); options = expand_val (bls_get_val (entry, "options", NULL)); + + if (!options) + options = expand_val (grub_env_get("default_kernelopts")); + initrds = bls_make_list (entry, "initrd", NULL); devicetree = expand_val (bls_get_val (entry, "devicetree", NULL));