From 9e39bbe6e577e0466404b915c25ab3e42fac26716808574aaad1c9bd7c7825b8 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Thu, 2 Mar 2017 07:28:00 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/Base:System/grub2?expand=0&rev=260 --- ...nal-NULL-from-File-Path-in-grub_efi_.patch | 41 ------------------- grub2.changes | 18 +++----- grub2.spec | 14 +------ 3 files changed, 7 insertions(+), 66 deletions(-) delete mode 100644 0001-efi-strip-off-final-NULL-from-File-Path-in-grub_efi_.patch diff --git a/0001-efi-strip-off-final-NULL-from-File-Path-in-grub_efi_.patch b/0001-efi-strip-off-final-NULL-from-File-Path-in-grub_efi_.patch deleted file mode 100644 index 101e2ed..0000000 --- a/0001-efi-strip-off-final-NULL-from-File-Path-in-grub_efi_.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 892dfbe113d08c18e51d7c27eee5094f3da530ec Mon Sep 17 00:00:00 2001 -From: Andrei Borzenkov -Date: Sat, 25 Feb 2017 08:39:38 +0300 -Subject: [PATCH] efi: strip off final NULL from File Path in - grub_efi_get_filename - -UEFI 2.6 9.3.6.4 File Path Media Device Path says that Path Name is -"A NULL-terminated Path string including directory and file names". - -Strip final NULL from Path Name in each File Path node when constructing -full path. To be on safe side, strip all of them. - -Fixes failure chainloading grub from grub, when loaded grub truncates -image path and does not find its grub.cfg. - -https://bugzilla.opensuse.org/show_bug.cgi?id=1026344 - -This was triggered by commit ce95549cc54b5d6f494608a7c390dba3aab4fba7; -before it we built Path Name without trailing NULL, and apparently all -other bootloaders use single File Path node, thus not exposing this bug. ---- - grub-core/kern/efi/efi.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/grub-core/kern/efi/efi.c b/grub-core/kern/efi/efi.c -index caf9bcc..d467785 100644 ---- a/grub-core/kern/efi/efi.c -+++ b/grub-core/kern/efi/efi.c -@@ -366,6 +366,9 @@ grub_efi_get_filename (grub_efi_device_path_t *dp0) - len = ((GRUB_EFI_DEVICE_PATH_LENGTH (dp) - 4) - / sizeof (grub_efi_char16_t)); - fp = (grub_efi_file_path_device_path_t *) dp; -+ /* According to EFI spec Path Name is NULL terminated */ -+ while (len > 0 && fp->path_name[len - 1] == 0) -+ len--; - - p = (char *) grub_utf16_to_utf8 ((unsigned char *) p, fp->path_name, len); - } --- -2.6.6 - diff --git a/grub2.changes b/grub2.changes index 18a47c7..556ab53 100644 --- a/grub2.changes +++ b/grub2.changes @@ -1,21 +1,13 @@ -------------------------------------------------------------------- -Wed Mar 1 10:29:46 UTC 2017 - mchang@suse.com - -- Fix for openQA UEFI USB Boot failure with upstream patch (bsc#1026344) - * added 0001-efi-strip-off-final-NULL-from-File-Path-in-grub_efi_.patch - * removed 0001-Revert-efi-properly-terminate-filepath-with-NULL-in-.patch - -------------------------------------------------------------------- -Thu Feb 23 15:06:44 UTC 2017 - mchang@suse.com - -- Temporary fix for openQA UEFI USB Boot failure (bsc#1026344) - * 0001-Revert-efi-properly-terminate-filepath-with-NULL-in-.patch - ------------------------------------------------------------------- Fri Feb 17 06:46:11 UTC 2017 - mchang@suse.com - grub2.spec: fix s390x file list. +------------------------------------------------------------------- +Thu Feb 16 12:55:29 UTC 2017 - msuchanek@suse.com + +- require efibootmgr in efi package (boo#1025520) + ------------------------------------------------------------------- Wed Feb 15 07:25:02 UTC 2017 - mchang@suse.com diff --git a/grub2.spec b/grub2.spec index 1904d74..e4082e0 100644 --- a/grub2.spec +++ b/grub2.spec @@ -206,7 +206,6 @@ Patch77: grub2-s390x-08-workaround-part-to-disk.patch Patch78: grub2-commands-introduce-read_file-subcommand.patch Patch79: grub2-efi-chainload-harder.patch Patch80: grub2-emu-4-all.patch -Patch81: 0001-efi-strip-off-final-NULL-from-File-Path-in-grub_efi_.patch # Btrfs snapshot booting related patches Patch101: grub2-btrfs-01-add-ability-to-boot-from-subvolumes.patch Patch102: grub2-btrfs-02-export-subvolume-envvars.patch @@ -337,19 +336,11 @@ provides support for %{platform} systems. %package %{grubefiarch} Summary: Bootloader with support for Linux, Multiboot and more +# Require efibootmgr +# Without it grub-install is broken so break the package as well if unavailable Group: System/Boot -%ifarch ia64 x86_64 aarch64 -#Package is available on ia64, x86_64 and aarch64 only and not necessarily needed Requires: efibootmgr Requires(post): efibootmgr -%endif -# Also require efibootmgr on i586 Tumbleweed where it is available -%if 0%{?suse_version} > 1320 -%ifarch i586 -Requires: efibootmgr -Requires(post): efibootmgr -%endif -%endif Requires: %{name} = %{version}-%{release} Requires(post): %{name} = %{version}-%{release} %if 0%{?update_bootloader_requires:1} @@ -462,7 +453,6 @@ swap partition while in resuming %patch78 -p1 %patch79 -p1 %patch80 -p1 -%patch81 -p1 %patch101 -p1 %patch102 -p1 %patch103 -p1