Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package grub2 for openSUSE:Factory checked in at 2026-06-15 19:40:45 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/grub2 (Old) and /work/SRC/openSUSE:Factory/.grub2.new.1981 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "grub2" Mon Jun 15 19:40:45 2026 rev:392 rq:1359338 version:2.14 Changes: -------- --- /work/SRC/openSUSE:Factory/grub2/grub2.changes 2026-06-04 18:56:39.594681692 +0200 +++ /work/SRC/openSUSE:Factory/.grub2.new.1981/grub2.changes 2026-06-15 19:42:21.116668763 +0200 @@ -1,0 +2,13 @@ +Fri Jun 12 07:02:28 UTC 2026 - Gary Ching-Pang Lin <[email protected]> + +- Fix the potential crash when enabling hardware acceleration for + libgcrypt + * 0001-lib-hwfeatures-gcry-Fix-write_cr0-writing-to-CR4.patch + +------------------------------------------------------------------- +Wed Jun 10 08:47:01 UTC 2026 - Michael Chang <[email protected]> + +- Fix 00-grub script deletes snapshot directory (bsc#1267884) + * grub2-snapper-plugin.sh + +------------------------------------------------------------------- New: ---- 0001-lib-hwfeatures-gcry-Fix-write_cr0-writing-to-CR4.patch ----------(New B)---------- New: libgcrypt * 0001-lib-hwfeatures-gcry-Fix-write_cr0-writing-to-CR4.patch ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ grub2.spec ++++++ --- /var/tmp/diff_new_pack.huohWR/_old 2026-06-15 19:42:24.844824987 +0200 +++ /var/tmp/diff_new_pack.huohWR/_new 2026-06-15 19:42:24.844824987 +0200 @@ -407,6 +407,7 @@ Patch427: 0001-Fix-problematic-utf8-conversion-in-bli-patches.patch Patch428: 0001-bls-fix-default-entry-and-bumpcounter-for-BLS-boot-c.patch Patch429: gcc16.patch +Patch430: 0001-lib-hwfeatures-gcry-Fix-write_cr0-writing-to-CR4.patch %if 0%{?suse_version} < 1600 Requires: gettext-runtime ++++++ 0001-lib-hwfeatures-gcry-Fix-write_cr0-writing-to-CR4.patch ++++++ >From 72b7a315c312b0da5063b1408e080758b8f15ea0 Mon Sep 17 00:00:00 2001 From: Egor Ignatov <[email protected]> Date: Thu, 4 Jun 2026 15:24:42 +0300 Subject: [PATCH] lib/hwfeatures-gcry: Fix write_cr0 writing to CR4 write_cr0() mistakenly emitted 'mov %0,%%cr4', writing the CR0 value into CR4 instead. When enabling SSE this corrupted CR4 and hung GRUB on AMD Ryzen 5 7530U (and likely other CPUs) while bringing up hardware acceleration. Target the correct register. Fixes: 8423176f1 ("lib/hwfeatures-gcry: Enable SSE and AVX for x86_64 EFI") Signed-off-by: Egor Ignatov <[email protected]> Reviewed-by: Leo Sandoval <[email protected]> Reviewed-by: Gary Lin <[email protected]> --- grub-core/lib/x86_64/efi/hwfeatures-gcry.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/grub-core/lib/x86_64/efi/hwfeatures-gcry.c b/grub-core/lib/x86_64/efi/hwfeatures-gcry.c index 8e26c010d..8aa0b48eb 100644 --- a/grub-core/lib/x86_64/efi/hwfeatures-gcry.c +++ b/grub-core/lib/x86_64/efi/hwfeatures-gcry.c @@ -57,7 +57,7 @@ read_cr4 (void) static void write_cr0 (grub_uint64_t val) { - asm volatile ("mov %0,%%cr4": "+r" (val) : : "memory"); + asm volatile ("mov %0,%%cr0": "+r" (val) : : "memory"); } static void -- 2.51.0 ++++++ grub2-snapper-plugin.sh ++++++ --- /var/tmp/diff_new_pack.huohWR/_old 2026-06-15 19:42:25.716861528 +0200 +++ /var/tmp/diff_new_pack.huohWR/_new 2026-06-15 19:42:25.720861696 +0200 @@ -124,6 +124,14 @@ return 0 } +rm_grub_snapper_cfg () { + dir="$1" + cfg="${dir}/${snapshot_submenu_name}" + if [ -f "$cfg" ]; then + rm -f "$cfg" + fi +} + snapper_snapshots_cfg_refresh () { if [ ! -d "$snapper_snapshot_path" ]; then @@ -144,11 +152,7 @@ ${cs}" else # cleanup any grub-snapshot.cfg without associated snapshot info - snapper_cfg="${s_dir}/${snapshot_submenu_name}" - if [ -f "$snapper_cfg" ]; then - rm -f "$snapper_cfg" - rmdir "$s_dir" 2>/dev/null || true - fi + rm_grub_snapper_cfg "$s_dir" continue fi @@ -184,22 +188,14 @@ } - snapshot_submenu_clean () { for s_dir in ${snapper_snapshot_path}/*; do - - snapper_cfg="${s_dir}/${snapshot_submenu_name}" - - if [ -f "$snapper_cfg" ]; then - rm -f "$snapper_cfg" - rmdir "$s_dir" 2>/dev/null || true - fi - + rm_grub_snapper_cfg "${s_dir}" done - if [ -f "${snapper_snapshot_path}/${snapshot_submenu_name}" ]; then - rm -f "${snapper_snapshot_path}/${snapshot_submenu_name}" + if [ -f "${snapper_snapshots_cfg}" ]; then + rm -f "${snapper_snapshots_cfg}" fi } @@ -236,11 +232,22 @@ -c | --clean) opt_clean=true ;; + delete-snapshot-pre) + # Deleting grub-snapshot.cfg so no leftover could interfere with snapper's + # delete operation. + + # Use shift to skip subvolume and fstype + shift && shift && del_num="$1" || : + ;; -*) ;; esac done +if [ "x${del_num}" != "x" ]; then + rm_grub_snapper_cfg "${snapper_snapshot_path}/${del_num}" +fi + if [ "x${opt_enable}" = "xtrue" ]; then snapper_snapshots_cfg_refresh elif [ "x${opt_enable}" = "xfalse" ]; then
