public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/grub2] f44: Fix default kernel not getting updated when using kernel-uki-dtbloader
@ 2026-06-08 17:28 Hans de Goede
  0 siblings, 0 replies; only message in thread
From: Hans de Goede @ 2026-06-08 17:28 UTC (permalink / raw)
  To: git-commits

            A new commit has been pushed.

            Repo   : rpms/grub2
            Branch : f44
            Commit : a507866842e11711fa4584378b60a24ef6cb8e33
            Author : Hans de Goede <johannes.goede@oss.qualcomm.com>
            Date   : 2026-05-30T15:18:28+02:00
            Stats  : +61/-2 in 3 file(s)
            URL    : https://src.fedoraproject.org/rpms/grub2/c/a507866842e11711fa4584378b60a24ef6cb8e33?branch=f44

            Log:
            Fix default kernel not getting updated when using kernel-uki-dtbloader

Resolves: #2463620
Signed-off-by: Hans de Goede <johannes.goede@oss.qualcomm.com>

---
diff --git a/0421-grub-get-kernel-settings-Treate-kernel-uki-dtbloader.patch b/0421-grub-get-kernel-settings-Treate-kernel-uki-dtbloader.patch
new file mode 100644
index 0000000..75ad88e
--- /dev/null
+++ b/0421-grub-get-kernel-settings-Treate-kernel-uki-dtbloader.patch
@@ -0,0 +1,54 @@
+From 656ee00556332659423c5672c2f9398c7e77c2fa Mon Sep 17 00:00:00 2001
+From: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Date: Sat, 30 May 2026 14:28:51 +0200
+Subject: [PATCH] grub-get-kernel-settings: Treate kernel-uki-dtbloader as
+ default kernel
+
+kernel-uki-dtbloader is a drop-in replacement for kernel-core, it even
+conflicts with kernel-core since it uses identical filenames under /boot.
+
+Before this patch grub-get-kernel-settings handled kernel-uki-dtbloader as
+a special kernel variant, causing GRUB_NON_STANDARD_KERNEL=true to get set
+which leads to /lib/kernel/install.d/20-grub.install setting
+GRUB_UPDATE_DEFAULT_KERNEL=false which results in skipping the
+grub2-set-default call later on during kernel-install.
+
+As a result of this users of Fedora 44+ ARM64 live media which uses
+kernel-uki-dtbloader would still get the old kernel on reboot after
+installing kernel updates (Bug 2463620 - GRUB environment variable
+saved_entry not updated when installing UKI kernel on F44 aarch64).
+
+Resolve this by treating kernel-uki-dtbloader as default kernel, just
+like how kernel-core is handled.
+
+Note on the next rebase of rhboot/grub this may be merged into
+commit c5baa5c1003d ("Add grub-get-kernel-settings and use it in 10_linux")
+
+Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2463620
+Fixes: c5baa5c1003d ("Add grub-get-kernel-settings and use it in 10_linux")
+Signed-off-by: Hans de Goede <johannes.goede@oss.qualcomm.com>
+---
+ util/grub-get-kernel-settings.in | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/util/grub-get-kernel-settings.in b/util/grub-get-kernel-settings.in
+index f71bc6436..47ea97868 100644
+--- a/util/grub-get-kernel-settings.in
++++ b/util/grub-get-kernel-settings.in
+@@ -68,7 +68,12 @@ if test -f /etc/sysconfig/kernel ; then
+     . /etc/sysconfig/kernel
+ fi
+ 
+-GRUB_DEFAULT_KERNEL_TYPE=${DEFAULTKERNEL/-core/}
++# kernel-uki-dtbloader is a drop in replacement for kernel-core, treat it as such
++if [ "$DEFAULTKERNEL" = "kernel-uki-dtbloader"  ]; then
++    GRUB_DEFAULT_KERNEL_TYPE="kernel"
++else
++    GRUB_DEFAULT_KERNEL_TYPE=${DEFAULTKERNEL/-core/}
++fi
+ if [ "$GRUB_DEFAULT_KERNEL_TYPE" != "kernel" ]; then
+     echo GRUB_NON_STANDARD_KERNEL=true
+     echo export GRUB_NON_STANDARD_KERNEL
+-- 
+2.54.0
+

diff --git a/grub.patches b/grub.patches
index 6fce3e1..40e27d6 100644
--- a/grub.patches
+++ b/grub.patches
@@ -416,4 +416,5 @@ Patch0416: 0416-Revert-Add-support-for-Linux-EFI-stub-loading-on-arm.patch
 Patch0417: 0417-loader-efi-linux.c-Free-mempath-after-use.patch
 Patch0418: 0418-loader-efi-linux.c-Unload-image-on-errors.patch
 Patch0419: 0419-loader-efi-linux.c-Disable-code-not-used-on-x86-when.patch
-Patch0420: 0420-util-grub-editenv-remove-stale-env_block-on-unsuppor.patch
\ No newline at end of file
+Patch0420: 0420-util-grub-editenv-remove-stale-env_block-on-unsuppor.patch
+Patch0421: 0421-grub-get-kernel-settings-Treate-kernel-uki-dtbloader.patch

diff --git a/grub2.spec b/grub2.spec
index 3fdea0f..02a5bdb 100644
--- a/grub2.spec
+++ b/grub2.spec
@@ -17,7 +17,7 @@
 Name:		grub2
 Epoch:		1
 Version:	2.12
-Release:	58%{?dist}
+Release:	59%{?dist}
 Summary:	Bootloader with support for Linux, Multiboot and more
 License:	GPL-3.0-or-later
 URL:		http://www.gnu.org/software/grub/
@@ -608,6 +608,10 @@ fi
 %endif
 
 %changelog
+* Sat May 30 2026 Hans de Goede <johannes.goede@oss.qualcomm.com> - 2.12-59
+- Fix default kernel not getting updated when using kernel-uki-dtbloader
+- Resolves: #2463620
+
 * Thu May 07 2026 Leo Sandoval <lsandova@redhat.com> - 2.12-58
 - util/grub-editenv: remove stale env_block on unsupported filesystem
 - Related: #2457333

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-06-08 17:28 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-08 17:28 [rpms/grub2] f44: Fix default kernel not getting updated when using kernel-uki-dtbloader Hans de Goede

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox