Hello community,

here is the log from the commit of package grub2 for openSUSE:Factory checked 
in at 2016-03-07 13:26:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/grub2 (Old)
 and      /work/SRC/openSUSE:Factory/.grub2.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "grub2"

Changes:
--------
--- /work/SRC/openSUSE:Factory/grub2/grub2.changes      2016-02-09 
13:31:03.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.grub2.new/grub2.changes 2016-03-07 
13:26:27.000000000 +0100
@@ -1,0 +2,101 @@
+Tue Mar  1 18:53:17 UTC 2016 - [email protected]
+
+- new upstream version 2.02~beta3
+  * highlights of user visible changes not yet present in openSUSE package
+    - arm-uboot now generates position independent self relocating image, so
+      single binary should run on all supported systems
+    - loader for Xen on aarch64. grub-mkconfig support was not in time for
+      beta3 yet.
+    - improved ZFS support (extensible_dataset, large_blocks, embedded_data,
+      hole_birth features)
+    - support for IPv6 Router Advertisements
+    - support for persistent memory (we do not overwrite it and pass correct
+      information to OS)
+    - try to display more specific icons for os-prober generated menu entries
+    - grub-install detects EFI bit size and selects correct platform 
(x86_64-efi
+      or i386-efi) independent of OS bit size; needs kernel 4.0 or higher.
+    - LVM RAID1 support
+    - xnu loader fixes which should make OS X menu entry generated by os-prober
+      work again
+    - key modifiers (Ctrl-X etc) should work on EFI too
+    - ... and lot of fixes over entire tree
+  * rediff
+    - rename-grub-info-file-to-grub2.patch
+    - use-grub2-as-a-package-name.patch
+    - grub2-GRUB_CMDLINE_LINUX_RECOVERY-for-recovery-mode.patch
+    - grub2-fix-menu-in-xen-host-server.patch
+    - grub2-efi-HP-workaround.patch
+    - grub2-secureboot-chainloader.patch
+    - grub2-s390x-02-kexec-module-added-to-emu.patch
+    - grub2-s390x-04-grub2-install.patch
+    - grub2-s390x-05-grub2-mkconfig.patch
+    - grub2-efi-xen-chainload.patch
+    - grub2-mkconfig-aarch64.patch
+    - grub2-btrfs-04-grub2-install.patch
+    - grub2-ppc64-cas-reboot-support.patch
+    - 0002-Add-Virtual-LAN-support.patch
+  * fix grub2-secureboot-add-linuxefi.patch - use grub_memset and
+    grub_memcpy instead of memset and memcpy (caused errors due to
+    compiler warning)
+  * drop upstream patches
+    - 0001-grub-core-kern-efi-efi.c-Ensure-that-the-result-star.patch
+    - 0001-look-for-DejaVu-also-in-usr-share-fonts-truetype.patch
+    - 0001-efidisk-move-device-path-helpers-in-core-for-efinet.patch
+    - 0002-efinet-skip-virtual-IPv4-and-IPv6-devices-when-enume.patch
+    - 0003-efinet-open-Simple-Network-Protocol-exclusively.patch
+    - 0001-efinet-Check-for-immediate-completition.patch
+    - 0001-efinet-enable-hardware-filters-when-opening-interfac.patch
+    - grub2-xen-legacy-config-device-name.patch
+    - grub2-getroot-support-NVMe-device-names.patch
+    - grub2-netboot-hang.patch
+    - grub2-btrfs-fix-incorrect-address-reference.patch
+    - aarch64-reloc.patch
+    - grub2-glibc-2.20.patch (related code dropped upstream)
+    - grub2-Initialized-initrd_ctx-so-we-don-t-free-a-random-poi.patch
+    - grub2-btrfs-fix-get_root-key-comparison-failures-due-to-en.patch
+    - grub2-getroot-fix-get-btrfs-fs-prefix-big-endian.patch
+    - grub2-ppc64-qemu.patch
+    - grub2-xfs-Add-helper-for-inode-size.patch
+    - grub2-xfs-Fix-termination-loop-for-directory-iteration.patch
+    - grub2-xfs-Convert-inode-numbers-to-cpu-endianity-immediate.patch
+    - grub2-xfs-V5-filesystem-format-support.patch
+    - 0001-Add-bootargs-parser-for-open-firmware.patch
+    - grub2-arm64-set-correct-length.patch
+    - grub2-arm64-setjmp-Add-missing-license-macro.patch
+    - grub2-arm64-efinet-handle-get_status-on-buggy-firmware-properly.patch
+    - 0001-unix-password-Fix-file-descriptor-leak.patch
+    - 0002-linux-getroot-fix-descriptor-leak.patch
+    - 0003-util-grub-mount-fix-descriptor-leak.patch
+    - 0004-linux-ofpath-fix-descriptor-leak.patch
+    - 0005-grub-fstest-fix-descriptor-leak.patch
+    - ppc64le.patch
+    - libgcc-prereq.patch
+    - libgcc.patch
+    - 0001-Fix-security-issue-when-reading-username-and-passwor.patch
+    - 0001-menu-fix-line-count-calculation-for-long-lines.patch
+    - grub2-arm64-Reduce-timer-event-frequency-by-10.patch
+    - 0001-unix-do-not-close-stdin-in-grub_passwd_get.patch
+    - 0001-grub-core-kern-i386-tsc.c-calibrate_tsc-Ensure-that.patch
+    - 0002-i386-tsc-Fix-unused-function-warning-on-xen.patch
+    - 0003-acpi-do-not-skip-BIOS-scan-if-EBDA-length-is-zero.patch
+    - 0004-tsc-Use-alternative-delay-sources-whenever-appropria.patch
+    - 0005-i386-fix-TSC-calibration-using-PIT.patch
+    - biendian.patch
+    - ppc64_opt.patch
+  * drop workarounds for gdb_grub and grub.chrp, they are now installed under 
fixed name
+  * do not patch docs/Makefile.in, it is regenerated anyway
+
+-------------------------------------------------------------------
+Tue Mar  1 11:06:34 UTC 2016 - [email protected]
+
+- Make mkconfig search for zImage on arm
+  * grub2-mkconfig-arm.patch
+
+-------------------------------------------------------------------
+Sun Feb 28 23:10:06 UTC 2016 - [email protected]
+
+- Add support to directly pass an EFI FDT table to a kernel on 32bit arm
+  * 0001-arm64-Move-firmware-fdt-search-into-global-function.patch
+  * 0002-arm-efi-Use-fdt-from-firmware-when-available.patch
+
+-------------------------------------------------------------------

Old:
----
  0001-Add-bootargs-parser-for-open-firmware.patch
  0001-Fix-security-issue-when-reading-username-and-passwor.patch
  0001-efidisk-move-device-path-helpers-in-core-for-efinet.patch
  0001-efinet-Check-for-immediate-completition.patch
  0001-efinet-enable-hardware-filters-when-opening-interfac.patch
  0001-grub-core-kern-efi-efi.c-Ensure-that-the-result-star.patch
  0001-grub-core-kern-i386-tsc.c-calibrate_tsc-Ensure-that.patch
  0001-look-for-DejaVu-also-in-usr-share-fonts-truetype.patch
  0001-menu-fix-line-count-calculation-for-long-lines.patch
  0001-unix-do-not-close-stdin-in-grub_passwd_get.patch
  0001-unix-password-Fix-file-descriptor-leak.patch
  0002-efinet-skip-virtual-IPv4-and-IPv6-devices-when-enume.patch
  0002-i386-tsc-Fix-unused-function-warning-on-xen.patch
  0002-linux-getroot-fix-descriptor-leak.patch
  0003-acpi-do-not-skip-BIOS-scan-if-EBDA-length-is-zero.patch
  0003-efinet-open-Simple-Network-Protocol-exclusively.patch
  0003-util-grub-mount-fix-descriptor-leak.patch
  0004-linux-ofpath-fix-descriptor-leak.patch
  0004-tsc-Use-alternative-delay-sources-whenever-appropria.patch
  0005-grub-fstest-fix-descriptor-leak.patch
  0005-i386-fix-TSC-calibration-using-PIT.patch
  aarch64-reloc.patch
  biendian.patch
  grub-2.02~beta2.tar.xz
  grub2-Initialized-initrd_ctx-so-we-don-t-free-a-random-poi.patch
  grub2-arm64-Reduce-timer-event-frequency-by-10.patch
  grub2-arm64-efinet-handle-get_status-on-buggy-firmware-properly.patch
  grub2-arm64-set-correct-length.patch
  grub2-arm64-setjmp-Add-missing-license-macro.patch
  grub2-btrfs-fix-get_root-key-comparison-failures-due-to-en.patch
  grub2-btrfs-fix-incorrect-address-reference.patch
  grub2-getroot-fix-get-btrfs-fs-prefix-big-endian.patch
  grub2-getroot-support-NVMe-device-names.patch
  grub2-glibc-2.20.patch
  grub2-netboot-hang.patch
  grub2-ppc64-qemu.patch
  grub2-xen-legacy-config-device-name.patch
  grub2-xfs-Add-helper-for-inode-size.patch
  grub2-xfs-Convert-inode-numbers-to-cpu-endianity-immediate.patch
  grub2-xfs-Fix-termination-loop-for-directory-iteration.patch
  grub2-xfs-V5-filesystem-format-support.patch
  libgcc-prereq.patch
  libgcc.patch
  ppc64_opt.patch
  ppc64le.patch

New:
----
  0001-arm64-Move-firmware-fdt-search-into-global-function.patch
  0002-arm-efi-Use-fdt-from-firmware-when-available.patch
  grub-2.02~beta3.tar.xz
  grub2-mkconfig-arm.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ grub2.spec ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:30.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:30.000000000 +0100
@@ -124,7 +124,7 @@
 %define only_x86_64 %{nil}
 %endif
 
-Version:        2.02~beta2
+Version:        2.02~beta3
 Release:        0
 Summary:        Bootloader with support for Linux, Multiboot and more
 License:        GPL-3.0+
@@ -153,7 +153,6 @@
 Patch1:         rename-grub-info-file-to-grub2.patch
 Patch2:         grub2-linux.patch
 Patch3:         use-grub2-as-a-package-name.patch
-Patch4:         0001-grub-core-kern-efi-efi.c-Ensure-that-the-result-star.patch
 Patch6:         grub2-iterate-and-hook-for-extended-partition.patch
 Patch8:         grub2-ppc-terminfo.patch
 Patch9:         grub2-GRUB_CMDLINE_LINUX_RECOVERY-for-recovery-mode.patch
@@ -170,7 +169,6 @@
 Patch29:        grub2-secureboot-chainloader.patch
 Patch34:        grub2-secureboot-use-linuxefi-on-uefi-in-os-prober.patch
 Patch35:        grub2-linguas.sh-no-rsync.patch
-Patch36:        0001-look-for-DejaVu-also-in-usr-share-fonts-truetype.patch
 Patch37:        grub2-use-Unifont-for-starfield-theme-terminal.patch
 Patch38:        
grub2-s390x-01-Changes-made-and-files-added-in-order-to-allow-s390x.patch
 Patch39:        grub2-s390x-02-kexec-module-added-to-emu.patch
@@ -178,33 +176,17 @@
 Patch41:        grub2-s390x-04-grub2-install.patch
 Patch42:        grub2-s390x-05-grub2-mkconfig.patch
 Patch43:        grub2-use-rpmsort-for-version-sorting.patch
-Patch44:        0001-efidisk-move-device-path-helpers-in-core-for-efinet.patch
-Patch45:        0002-efinet-skip-virtual-IPv4-and-IPv6-devices-when-enume.patch
-Patch46:        0003-efinet-open-Simple-Network-Protocol-exclusively.patch
-Patch47:        0001-efinet-Check-for-immediate-completition.patch
-Patch48:        0001-efinet-enable-hardware-filters-when-opening-interfac.patch
-Patch51:        grub2-xen-legacy-config-device-name.patch
-Patch52:        grub2-getroot-support-NVMe-device-names.patch
 Patch53:        grub2-getroot-treat-mdadm-ddf-as-simple-device.patch
 Patch56:        grub2-setup-try-fs-embed-if-mbr-gap-too-small.patch
-Patch57:        grub2-netboot-hang.patch
 Patch58:        grub2-xen-linux16.patch
 Patch59:        grub2-efi-disable-video-cirrus-and-bochus.patch
 Patch60:        grub2-editenv-add-warning-message.patch
 Patch61:        grub2-vbe-blacklist-preferred-1440x900x32.patch
-Patch62:        grub2-btrfs-fix-incorrect-address-reference.patch
-Patch63:        aarch64-reloc.patch
 Patch64:        grub2-btrfs-workaround-grub2-once.patch
 Patch65:        grub2-mkconfig-aarch64.patch
-# Fix build with glibc 2.20+
-Patch66:        grub2-glibc-2.20.patch
-Patch67:        
grub2-Initialized-initrd_ctx-so-we-don-t-free-a-random-poi.patch
-Patch68:        
grub2-btrfs-fix-get_root-key-comparison-failures-due-to-en.patch
-Patch69:        grub2-getroot-fix-get-btrfs-fs-prefix-big-endian.patch
 Patch70:        grub2-default-distributor.patch
 Patch71:        grub2-menu-unrestricted.patch
-Patch72:        0001-Fix-security-issue-when-reading-username-and-passwor.patch
-Patch73:        0001-menu-fix-line-count-calculation-for-long-lines.patch
+Patch72:        grub2-mkconfig-arm.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
@@ -216,41 +198,15 @@
 Patch120:       grub2-efi-xen-chainload.patch
 Patch121:       grub2-efi-chainloader-root.patch
 Patch122:       grub2-efi-xen-cmdline.patch
+# 32bit ARM EFI FDT table pass-through support
+Patch130:       0001-arm64-Move-firmware-fdt-search-into-global-function.patch
+Patch131:       0002-arm-efi-Use-fdt-from-firmware-when-available.patch
 # PPC64 LE support
-Patch201:       ppc64le.patch
-Patch202:       libgcc-prereq.patch
-Patch203:       libgcc.patch
-Patch204:       grub2-ppc64-qemu.patch
 Patch205:       grub2-ppc64le-disable-video.patch
 Patch207:       grub2-ppc64le-memory-map.patch
-Patch229:       grub2-xfs-Add-helper-for-inode-size.patch
-Patch230:       grub2-xfs-Fix-termination-loop-for-directory-iteration.patch
-Patch231:       
grub2-xfs-Convert-inode-numbers-to-cpu-endianity-immediate.patch
-Patch232:       grub2-xfs-V5-filesystem-format-support.patch
 Patch233:       grub2-use-stat-instead-of-udevadm-for-partition-lookup.patch
-Patch234:       0001-Add-bootargs-parser-for-open-firmware.patch 
 Patch235:       0002-Add-Virtual-LAN-support.patch 
 Patch236:       grub2-efi_gop-avoid-low-resolution.patch
-Patch238:       grub2-arm64-Reduce-timer-event-frequency-by-10.patch
-Patch239:       grub2-arm64-set-correct-length.patch
-Patch240:       grub2-arm64-setjmp-Add-missing-license-macro.patch
-Patch241:       
grub2-arm64-efinet-handle-get_status-on-buggy-firmware-properly.patch
-# Upstream patches for fixing file descriptor leakage (bsc#943784)
-Patch260:       0001-unix-password-Fix-file-descriptor-leak.patch
-Patch261:       0002-linux-getroot-fix-descriptor-leak.patch
-Patch262:       0003-util-grub-mount-fix-descriptor-leak.patch
-Patch263:       0004-linux-ofpath-fix-descriptor-leak.patch
-Patch264:       0005-grub-fstest-fix-descriptor-leak.patch
-# Upstream patch to fix patch 0001-unix-password-Fix-file-descriptor-leak.patch
-Patch265:       0001-unix-do-not-close-stdin-in-grub_passwd_get.patch
-# Backport upstream patches for HyperV gen2 TSC timer calbration without RTC 
(bsc#904647)
-Patch270:       0001-grub-core-kern-i386-tsc.c-calibrate_tsc-Ensure-that.patch
-Patch271:       0002-i386-tsc-Fix-unused-function-warning-on-xen.patch
-Patch272:       0003-acpi-do-not-skip-BIOS-scan-if-EBDA-length-is-zero.patch
-Patch273:       0004-tsc-Use-alternative-delay-sources-whenever-appropria.patch
-Patch274:       0005-i386-fix-TSC-calibration-using-PIT.patch
-Patch275:       biendian.patch
-Patch276:       ppc64_opt.patch
 Patch277:       grub2-ppc64-cas-reboot-support.patch
 
 Requires:       gettext-runtime
@@ -419,7 +375,6 @@
 mv po/grub.pot po/%{name}.pot
 %patch2 -p1
 %patch3 -p1
-%patch4 -p1
 %patch6 -p1
 %patch8 -p1
 %patch9 -p1
@@ -436,7 +391,6 @@
 %patch29 -p1
 %patch34 -p1
 %patch35 -p1
-%patch36 -p1
 %patch37 -p1
 %patch38 -p1
 %patch39 -p1
@@ -444,32 +398,17 @@
 %patch41 -p1
 %patch42 -p1
 %patch43 -p1
-%patch44 -p1
-%patch45 -p1
-%patch46 -p1
-%patch47 -p1
-%patch48 -p1
-%patch51 -p1
-%patch52 -p1
 %patch53 -p1
 %patch56 -p1
-%patch57 -p1
 %patch58 -p1
 %patch59 -p1
 %patch60 -p1
 %patch61 -p1
-%patch62 -p1
-%patch63 -p1
 %patch64 -p1
 %patch65 -p1
-%patch66 -p1
-%patch67 -p1
-%patch68 -p1
-%patch69 -p1
 %patch70 -p1
 %patch71 -p1
 %patch72 -p1
-%patch73 -p1
 %patch101 -p1
 %patch102 -p1
 %patch103 -p1
@@ -479,37 +418,13 @@
 %patch120 -p1
 %patch121 -p1
 %patch122 -p1
-%patch201 -p1
-%patch202 -p1
-%patch203 -p1
-%patch204 -p1
+%patch130 -p1
+%patch131 -p1
 %patch205 -p1
 %patch207 -p1
-%patch229 -p1
-%patch230 -p1
-%patch231 -p1
-%patch232 -p1
 %patch233 -p1
-%patch234 -p1
 %patch235 -p1
 %patch236 -p1
-%patch238 -p1
-%patch239 -p1
-%patch240 -p1
-%patch241 -p1
-%patch260 -p1
-%patch261 -p1
-%patch262 -p1
-%patch263 -p1
-%patch264 -p1
-%patch265 -p1
-%patch270 -p1
-%patch271 -p1
-%patch272 -p1
-%patch273 -p1
-%patch274 -p1
-%patch275 -p1
-%patch276 -p1
 %patch277 -p1
 
 # Generate po/LINGUAS for message catalogs ...
@@ -727,12 +642,6 @@
 install -m 755 -D %{SOURCE17} 
$RPM_BUILD_ROOT%{_libdir}/systemd/system-sleep/grub2.sleep
 %endif
 
-%ifarch ppc ppc64 ppc64le
-# Rename grub2.chrp back to grub.chrp so it is found by tools
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/%{grubarch}/%{name}.chrp \
-   $RPM_BUILD_ROOT%{_libdir}/%{name}/%{grubarch}/grub.chrp
-%endif
-
 R=$RPM_BUILD_ROOT
 %ifarch %{ix86} x86_64
 %else
@@ -996,9 +905,9 @@
 %{_sbindir}/%{name}-ofpathname
 %{_sbindir}/%{name}-sparc64-setup
 %{_mandir}/man1/%{name}-glue-efi.1.*
-%{_mandir}/man1/%{name}-macbless.1.*
 %{_mandir}/man1/%{name}-mount.1.*
 %{_mandir}/man8/%{name}-bios-setup.8.*
+%{_mandir}/man8/%{name}-macbless.8.*
 %{_mandir}/man8/%{name}-ofpathname.8.*
 %{_mandir}/man8/%{name}-sparc64-setup.8.*
 %endif
@@ -1031,7 +940,7 @@
 %ifarch x86_64
 %{_libdir}/%{name}/%{grubarch}/efiemu*.o
 %endif
-%{_libdir}/%{name}/%{grubarch}/gdb_grub2
+%{_libdir}/%{name}/%{grubarch}/gdb_grub
 %{_libdir}/%{name}/%{grubarch}/gmodule.pl
 %{_libdir}/%{name}/%{grubarch}/kernel.exec
 %{_libdir}/%{name}/%{grubarch}/modinfo.sh
@@ -1052,7 +961,7 @@
 %{_libdir}/%{name}/%{grubefiarch}/*.lst
 %{_libdir}/%{name}/%{grubefiarch}/*.mod
 %{_libdir}/%{name}/%{grubefiarch}/*.module
-%{_libdir}/%{name}/%{grubefiarch}/gdb_grub2
+%{_libdir}/%{name}/%{grubefiarch}/gdb_grub
 %{_libdir}/%{name}/%{grubefiarch}/gmodule.pl
 %{_libdir}/%{name}/%{grubefiarch}/kernel.exec
 %{_libdir}/%{name}/%{grubefiarch}/modinfo.sh

++++++ 0001-arm64-Move-firmware-fdt-search-into-global-function.patch ++++++
>From 3750bd8d7cf8a7a7bbbda3354bea64f86cb34910 Mon Sep 17 00:00:00 2001
From: Alexander Graf <[email protected]>
Date: Mon, 4 Jan 2016 22:00:04 +0100
Subject: [PATCH 1/2] arm64: Move firmware fdt search into global function

Searching for a device tree that EFI passes to us via configuration tables
is nothing architecture specific. Move it into generic code.

Signed-off-by: Alexander Graf <[email protected]>
---
 grub-core/kern/efi/init.c    | 22 ++++++++++++++++++++++
 grub-core/loader/arm64/fdt.c | 24 +-----------------------
 include/grub/efi/efi.h       |  2 ++
 3 files changed, 25 insertions(+), 23 deletions(-)

diff --git a/grub-core/kern/efi/init.c b/grub-core/kern/efi/init.c
index e9c85de..fb90ecd 100644
--- a/grub-core/kern/efi/init.c
+++ b/grub-core/kern/efi/init.c
@@ -72,6 +72,28 @@ grub_machine_get_bootlocation (char **device, char **path)
     }
 }
 
+void *
+grub_efi_get_firmware_fdt (void)
+{
+  grub_efi_configuration_table_t *tables;
+  grub_efi_guid_t fdt_guid = GRUB_EFI_DEVICE_TREE_GUID;
+  void *firmware_fdt = NULL;
+  unsigned int i;
+
+  /* Look for FDT in UEFI config tables. */
+  tables = grub_efi_system_table->configuration_table;
+
+  for (i = 0; i < grub_efi_system_table->num_table_entries; i++)
+    if (grub_memcmp (&tables[i].vendor_guid, &fdt_guid, sizeof (fdt_guid)) == 
0)
+      {
+       firmware_fdt = tables[i].vendor_table;
+       grub_dprintf ("linux", "found registered FDT @ %p\n", firmware_fdt);
+       break;
+      }
+
+  return firmware_fdt;
+}
+
 void
 grub_efi_fini (void)
 {
diff --git a/grub-core/loader/arm64/fdt.c b/grub-core/loader/arm64/fdt.c
index 5202c14..db49cf6 100644
--- a/grub-core/loader/arm64/fdt.c
+++ b/grub-core/loader/arm64/fdt.c
@@ -28,28 +28,6 @@
 static void *loaded_fdt;
 static void *fdt;
 
-static void *
-get_firmware_fdt (void)
-{
-  grub_efi_configuration_table_t *tables;
-  grub_efi_guid_t fdt_guid = GRUB_EFI_DEVICE_TREE_GUID;
-  void *firmware_fdt = NULL;
-  unsigned int i;
-
-  /* Look for FDT in UEFI config tables. */
-  tables = grub_efi_system_table->configuration_table;
-
-  for (i = 0; i < grub_efi_system_table->num_table_entries; i++)
-    if (grub_memcmp (&tables[i].vendor_guid, &fdt_guid, sizeof (fdt_guid)) == 
0)
-      {
-       firmware_fdt = tables[i].vendor_table;
-       grub_dprintf ("linux", "found registered FDT @ %p\n", firmware_fdt);
-       break;
-      }
-
-  return firmware_fdt;
-}
-
 void *
 grub_fdt_load (grub_size_t additional_size)
 {
@@ -65,7 +43,7 @@ grub_fdt_load (grub_size_t additional_size)
   if (loaded_fdt)
     raw_fdt = loaded_fdt;
   else
-    raw_fdt = get_firmware_fdt();
+    raw_fdt = grub_efi_get_firmware_fdt();
 
   size =
     raw_fdt ? grub_fdt_get_totalsize (raw_fdt) : GRUB_FDT_EMPTY_TREE_SZ;
diff --git a/include/grub/efi/efi.h b/include/grub/efi/efi.h
index 0e6fd86..2acf85e 100644
--- a/include/grub/efi/efi.h
+++ b/include/grub/efi/efi.h
@@ -81,6 +81,8 @@ extern void (*EXPORT_VAR(grub_efi_net_config)) 
(grub_efi_handle_t hnd,
                                                char **device,
                                                char **path);
 
+void *EXPORT_FUNC(grub_efi_get_firmware_fdt)(void);
+
 grub_addr_t grub_efi_modules_addr (void);
 
 void grub_efi_mm_init (void);
-- 
2.7.1

++++++ 0002-Add-Virtual-LAN-support.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:30.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:30.000000000 +0100
@@ -19,36 +19,11 @@
  include/grub/net/ip.h                  |  3 ++-
  8 files changed, 124 insertions(+), 20 deletions(-)
 
-diff --git a/ChangeLog b/ChangeLog
-index a659369..188c882 100644
---- a/ChangeLog
-+++ b/ChangeLog
-@@ -1,3 +1,20 @@
-+2014-02-04  Paulo Flabiano Smorigo  <[email protected]>
-+
-+      Add Virtual LAN support.
-+
-+      This patch adds support for virtual LAN (VLAN) tagging. VLAN tagging 
allows
-+      multiple VLANs in a bridged network to share the same physical network 
link
-+      but maintain isolation:
-+
-+      http://en.wikipedia.org/wiki/IEEE_802.1Q
-+
-+      * grub-core/net/ethernet.c: Add check, get, and set vlan tag id.
-+      * grub-core/net/drivers/ieee1275/ofnet.c: Get vlan tag id from bootargs.
-+      * grub-core/net/arp.c: Add check.
-+      * grub-core/net/ip.c: Likewise.
-+      * include/grub/net/arp.h: Add vlantag attribute.
-+      * include/grub/net/ip.h: Likewise.
-+
- 2014-01-24  Paulo Flabiano Smorigo  <[email protected]>
- 
-       Add bootargs parser for open firmware.
-diff --git a/grub-core/net/arp.c b/grub-core/net/arp.c
-index e92c7e7..3a3ee29 100644
---- a/grub-core/net/arp.c
-+++ b/grub-core/net/arp.c
-@@ -121,8 +121,8 @@ grub_net_arp_send_request (struct 
grub_net_network_level_interface *inf,
+Index: grub-2.02~beta3/grub-core/net/arp.c
+===================================================================
+--- grub-2.02~beta3.orig/grub-core/net/arp.c   2016-02-28 19:23:27.060877621 
+0300
++++ grub-2.02~beta3/grub-core/net/arp.c        2016-02-28 19:23:27.056877621 
+0300
+@@ -111,8 +111,8 @@
  }
  
  grub_err_t
@@ -57,9 +32,9 @@
 +grub_net_arp_receive (struct grub_net_buff *nb, struct grub_net_card *card,
 +                      grub_uint16_t vlantag_vid)
  {
-   struct arphdr *arp_header = (struct arphdr *) nb->data;
-   grub_uint8_t *sender_hardware_address;
-@@ -157,6 +157,12 @@ grub_net_arp_receive (struct grub_net_buff *nb,
+   struct arppkt *arp_packet = (struct arppkt *) nb->data;
+   grub_net_network_level_address_t sender_addr, target_addr;
+@@ -138,6 +138,12 @@
  
    FOR_NET_NETWORK_LEVEL_INTERFACES (inf)
    {
@@ -71,12 +46,12 @@
 +
      /* Am I the protocol address target? */
      if (grub_net_addr_cmp (&inf->address, &target_addr) == 0
-       && grub_be_to_cpu16 (arp_header->op) == ARP_REQUEST)
-diff --git a/grub-core/net/drivers/ieee1275/ofnet.c 
b/grub-core/net/drivers/ieee1275/ofnet.c
-index a079065..2a4f27c 100644
---- a/grub-core/net/drivers/ieee1275/ofnet.c
-+++ b/grub-core/net/drivers/ieee1275/ofnet.c
-@@ -147,11 +147,11 @@ grub_ieee1275_parse_bootargs (const char *devpath, char 
*bootpath,
+       && arp_packet->op == grub_cpu_to_be16_compile_time (ARP_REQUEST))
+Index: grub-2.02~beta3/grub-core/net/drivers/ieee1275/ofnet.c
+===================================================================
+--- grub-2.02~beta3.orig/grub-core/net/drivers/ieee1275/ofnet.c        
2016-02-28 19:23:27.060877621 +0300
++++ grub-2.02~beta3/grub-core/net/drivers/ieee1275/ofnet.c     2016-02-28 
19:24:47.004878566 +0300
+@@ -147,11 +147,11 @@
    char *comma_char = 0;
    char *equal_char = 0;
    grub_size_t field_counter = 0;
@@ -84,12 +59,12 @@
    grub_net_network_level_address_t client_addr, gateway_addr, subnet_mask;
    grub_net_link_level_address_t hw_addr;
    grub_net_interface_flags_t flags = 0;
-   struct grub_net_network_level_interface *inter;
+   struct grub_net_network_level_interface *inter = NULL;
 +  grub_uint32_t vlantag = 0;
  
    hw_addr.type = GRUB_NET_LINK_LEVEL_PROTOCOL_ETHERNET;
  
-@@ -169,6 +169,18 @@ grub_ieee1275_parse_bootargs (const char *devpath, char 
*bootpath,
+@@ -169,6 +169,18 @@
            *equal_char = 0;
            grub_env_set_net_property ((*card)->name, args, equal_char + 1,
                                       grub_strlen(equal_char + 1));
@@ -108,7 +83,7 @@
            *equal_char = '=';
          }
        else
-@@ -207,6 +219,12 @@ grub_ieee1275_parse_bootargs (const char *devpath, char 
*bootpath,
+@@ -207,6 +219,12 @@
                                    hw_addr.mac, sizeof(hw_addr.mac), 0);
        inter = grub_net_add_addr ((*card)->name, *card, &client_addr, &hw_addr,
                                   flags);
@@ -121,10 +96,10 @@
        grub_net_add_ipv4_local (inter,
                            __builtin_ctz (~grub_le_to_cpu32 
(subnet_mask.ipv4)));
      }
-diff --git a/grub-core/net/ethernet.c b/grub-core/net/ethernet.c
-index c397b1b..3a526b3 100644
---- a/grub-core/net/ethernet.c
-+++ b/grub-core/net/ethernet.c
+Index: grub-2.02~beta3/grub-core/net/ethernet.c
+===================================================================
+--- grub-2.02~beta3.orig/grub-core/net/ethernet.c      2016-02-28 
19:23:27.060877621 +0300
++++ grub-2.02~beta3/grub-core/net/ethernet.c   2016-02-28 19:23:27.056877621 
+0300
 @@ -18,6 +18,7 @@
  
  #include <grub/misc.h>
@@ -133,7 +108,7 @@
  #include <grub/net/ethernet.h>
  #include <grub/net/ip.h>
  #include <grub/net/arp.h>
-@@ -56,10 +57,16 @@ send_ethernet_packet (struct 
grub_net_network_level_interface *inf,
+@@ -56,10 +57,16 @@
  {
    struct etherhdr *eth;
    grub_err_t err;
@@ -152,7 +127,7 @@
    if (err)
      return err;
    eth = (struct etherhdr *) nb->data;
-@@ -76,6 +83,21 @@ send_ethernet_packet (struct 
grub_net_network_level_interface *inf,
+@@ -76,6 +83,21 @@
        return err;
        inf->card->opened = 1;
      }
@@ -174,7 +149,7 @@
    return inf->card->driver->send (inf->card, nb);
  }
  
-@@ -90,10 +112,26 @@ grub_net_recv_ethernet_packet (struct grub_net_buff *nb,
+@@ -90,10 +112,26 @@
    grub_net_link_level_address_t hwaddress;
    grub_net_link_level_address_t src_hwaddress;
    grub_err_t err;
@@ -202,7 +177,7 @@
    if (err)
      return err;
  
-@@ -121,13 +159,14 @@ grub_net_recv_ethernet_packet (struct grub_net_buff *nb,
+@@ -121,13 +159,14 @@
      {
        /* ARP packet. */
      case GRUB_NET_ETHERTYPE_ARP:
@@ -219,11 +194,11 @@
      }
    grub_netbuff_free (nb);
    return GRUB_ERR_NONE;
-diff --git a/grub-core/net/ip.c b/grub-core/net/ip.c
-index c6971f9..8041905 100644
---- a/grub-core/net/ip.c
-+++ b/grub-core/net/ip.c
-@@ -225,12 +225,13 @@ handle_dgram (struct grub_net_buff *nb,
+Index: grub-2.02~beta3/grub-core/net/ip.c
+===================================================================
+--- grub-2.02~beta3.orig/grub-core/net/ip.c    2016-02-28 19:23:27.060877621 
+0300
++++ grub-2.02~beta3/grub-core/net/ip.c 2016-02-28 19:23:27.056877621 +0300
+@@ -228,12 +228,13 @@
              grub_net_ip_protocol_t proto,
              const grub_net_network_level_address_t *source,
              const grub_net_network_level_address_t *dest,
@@ -238,7 +213,7 @@
    /* DHCP needs special treatment since we don't know IP yet.  */
    {
      struct udphdr *udph;
-@@ -290,6 +291,13 @@ handle_dgram (struct grub_net_buff *nb,
+@@ -293,6 +294,13 @@
        && grub_net_addr_cmp (&inf->address, dest) == 0
        && grub_net_hwaddr_cmp (&inf->hwaddress, hwaddress) == 0)
        break;
@@ -252,7 +227,7 @@
      /* Solicited node multicast.  */
      if (inf->card == card
        && inf->address.type == GRUB_NET_NETWORK_LEVEL_PROTOCOL_IPV6
-@@ -378,7 +386,8 @@ static grub_err_t
+@@ -381,7 +389,8 @@
  grub_net_recv_ip4_packets (struct grub_net_buff *nb,
                           struct grub_net_card *card,
                           const grub_net_link_level_address_t *hwaddress,
@@ -262,7 +237,7 @@
  {
    struct iphdr *iph = (struct iphdr *) nb->data;
    grub_err_t err;
-@@ -453,7 +462,7 @@ grub_net_recv_ip4_packets (struct grub_net_buff *nb,
+@@ -456,7 +465,7 @@
        dest.ipv4 = iph->dest;
  
        return handle_dgram (nb, card, src_hwaddress, hwaddress, iph->protocol,
@@ -271,7 +246,7 @@
      }
  
    for (prev = &reassembles, rsm = *prev; rsm; prev = &rsm->next, rsm = *prev)
-@@ -589,7 +598,7 @@ grub_net_recv_ip4_packets (struct grub_net_buff *nb,
+@@ -592,7 +601,7 @@
        dest.ipv4 = dst;
  
        return handle_dgram (ret, card, src_hwaddress,
@@ -280,7 +255,7 @@
                           ttl);
      }
  }
-@@ -644,7 +653,8 @@ static grub_err_t
+@@ -650,7 +659,8 @@
  grub_net_recv_ip6_packets (struct grub_net_buff *nb,
                           struct grub_net_card *card,
                           const grub_net_link_level_address_t *hwaddress,
@@ -290,7 +265,7 @@
  {
    struct ip6hdr *iph = (struct ip6hdr *) nb->data;
    grub_err_t err;
-@@ -695,21 +705,24 @@ grub_net_recv_ip6_packets (struct grub_net_buff *nb,
+@@ -701,21 +711,24 @@
    grub_memcpy (dest.ipv6, &iph->dest, sizeof (dest.ipv6));
  
    return handle_dgram (nb, card, src_hwaddress, hwaddress, iph->protocol,
@@ -319,11 +294,11 @@
    grub_dprintf ("net", "Bad IP version: %d\n", (iph->verhdrlen >> 4));
    grub_netbuff_free (nb);
    return GRUB_ERR_NONE;
-diff --git a/include/grub/net.h b/include/grub/net.h
-index 843f74f..db5f6b3 100644
---- a/include/grub/net.h
-+++ b/include/grub/net.h
-@@ -268,6 +268,12 @@ typedef struct grub_net
+Index: grub-2.02~beta3/include/grub/net.h
+===================================================================
+--- grub-2.02~beta3.orig/include/grub/net.h    2016-02-28 19:23:27.060877621 
+0300
++++ grub-2.02~beta3/include/grub/net.h 2016-02-28 19:23:27.056877621 +0300
+@@ -280,6 +280,12 @@
  
  extern grub_net_t (*EXPORT_VAR (grub_net_open)) (const char *name);
  
@@ -336,7 +311,7 @@
  struct grub_net_network_level_interface
  {
    struct grub_net_network_level_interface *next;
-@@ -279,6 +285,7 @@ struct grub_net_network_level_interface
+@@ -291,6 +297,7 @@
    grub_net_interface_flags_t flags;
    struct grub_net_bootp_packet *dhcp_ack;
    grub_size_t dhcp_acklen;
@@ -344,17 +319,17 @@
    void *data;
  };
  
-@@ -537,4 +544,6 @@ extern char *grub_net_default_server;
- #define GRUB_NET_TRIES 40
+@@ -561,4 +568,6 @@
  #define GRUB_NET_INTERVAL 400
+ #define GRUB_NET_INTERVAL_ADDITION 20
  
 +#define VLANTAG_IDENTIFIER 0x8100
 +
  #endif /* ! GRUB_NET_HEADER */
-diff --git a/include/grub/net/arp.h b/include/grub/net/arp.h
-index bb17036..56336b3 100644
---- a/include/grub/net/arp.h
-+++ b/include/grub/net/arp.h
+Index: grub-2.02~beta3/include/grub/net/arp.h
+===================================================================
+--- grub-2.02~beta3.orig/include/grub/net/arp.h        2016-02-28 
19:23:27.060877621 +0300
++++ grub-2.02~beta3/include/grub/net/arp.h     2016-02-28 19:23:27.056877621 
+0300
 @@ -22,10 +22,11 @@
  #include <grub/net.h>
  
@@ -369,11 +344,11 @@
 +                           const grub_net_network_level_address_t 
*proto_addr);
  
  #endif 
-diff --git a/include/grub/net/ip.h b/include/grub/net/ip.h
-index 7a8e614..e79dec9 100644
---- a/include/grub/net/ip.h
-+++ b/include/grub/net/ip.h
-@@ -48,7 +48,8 @@ grub_err_t
+Index: grub-2.02~beta3/include/grub/net/ip.h
+===================================================================
+--- grub-2.02~beta3.orig/include/grub/net/ip.h 2016-02-28 19:23:27.060877621 
+0300
++++ grub-2.02~beta3/include/grub/net/ip.h      2016-02-28 19:23:27.056877621 
+0300
+@@ -48,7 +48,8 @@
  grub_net_recv_ip_packets (struct grub_net_buff *nb,
                          struct grub_net_card *card,
                          const grub_net_link_level_address_t *hwaddress,
@@ -383,5 +358,3 @@
  
  grub_err_t
  grub_net_send_ip_packet (struct grub_net_network_level_interface *inf,
--- 
-1.9.3

++++++ 0002-arm-efi-Use-fdt-from-firmware-when-available.patch ++++++
>From 2a36cece32e4b967d164f974b5b5740cfa0375e1 Mon Sep 17 00:00:00 2001
From: Alexander Graf <[email protected]>
Date: Mon, 4 Jan 2016 22:05:55 +0100
Subject: [PATCH 2/2] arm efi: Use fdt from firmware when available

If EFI is nice enough to pass us an FDT using configuration tables on 32bit
ARM, we should really try and make use of it.

Signed-off-by: Alexander Graf <[email protected]>
---
 include/grub/arm/linux.h | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/include/grub/arm/linux.h b/include/grub/arm/linux.h
index 059dbba..a66caad 100644
--- a/include/grub/arm/linux.h
+++ b/include/grub/arm/linux.h
@@ -40,11 +40,7 @@
 # define LINUX_PHYS_OFFSET        (0x00008000)
 # define LINUX_INITRD_PHYS_OFFSET (LINUX_PHYS_OFFSET + 0x02000000)
 # define LINUX_FDT_PHYS_OFFSET    (LINUX_INITRD_PHYS_OFFSET - 0x10000)
-static inline grub_addr_t
-grub_arm_firmware_get_boot_data (void)
-{
-  return 0;
-}
+# define grub_arm_firmware_get_boot_data (grub_addr_t)grub_efi_get_firmware_fdt
 static inline grub_uint32_t
 grub_arm_firmware_get_machine_type (void)
 {
-- 
2.7.1

++++++ grub-2.02~beta2.tar.xz -> grub-2.02~beta3.tar.xz ++++++
++++ 371083 lines of diff (skipped)

++++++ grub2-GRUB_CMDLINE_LINUX_RECOVERY-for-recovery-mode.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:32.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:32.000000000 +0100
@@ -21,7 +21,7 @@
 ===================================================================
 --- grub-2.02~beta2.orig/util/grub-mkconfig.in
 +++ grub-2.02~beta2/util/grub-mkconfig.in
-@@ -224,7 +224,8 @@ export GRUB_DEFAULT \
+@@ -227,7 +227,8 @@ export GRUB_DEFAULT \
    GRUB_ENABLE_CRYPTODISK \
    GRUB_BADRAM \
    GRUB_OS_PROBER_SKIP_LIST \
@@ -35,7 +35,7 @@
 ===================================================================
 --- grub-2.02~beta2.orig/util/grub.d/10_linux.in
 +++ grub-2.02~beta2/util/grub.d/10_linux.in
-@@ -238,7 +238,7 @@ while [ "x$list" != "x" ] ; do
+@@ -240,7 +240,7 @@ while [ "x$list" != "x" ] ; do
                "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_DEFAULT}"
    if [ "x${GRUB_DISABLE_RECOVERY}" != "xtrue" ]; then
      linux_entry "${OS}" "${version}" recovery \
@@ -43,4 +43,4 @@
 +                "${GRUB_CMDLINE_LINUX} ${GRUB_CMDLINE_LINUX_RECOVERY}"
    fi
  
-   list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '`
+   list=`echo $list | tr ' ' '\n' | fgrep -vx "$linux" | tr '\n' ' '`

++++++ grub2-btrfs-04-grub2-install.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -26,8 +26,8 @@
        *ptr++ = *iptr;
      }
  
--  strcpy (ptr, "'; printf 
\"GRUB_ENABLE_CRYPTODISK=%s\\nGRUB_DISTRIBUTOR=%s\\n\", "
--        "\"$GRUB_ENABLE_CRYPTODISK\", \"$GRUB_DISTRIBUTOR\"");
+-  strcpy (ptr, "'; printf 
\"GRUB_ENABLE_CRYPTODISK=%s\\nGRUB_DISTRIBUTOR=%s\\n\" "
+-        "\"$GRUB_ENABLE_CRYPTODISK\" \"$GRUB_DISTRIBUTOR\"");
 +  strcpy (ptr, "'; printf 
\"GRUB_ENABLE_CRYPTODISK=%s\\nGRUB_DISTRIBUTOR=%s\\nSUSE_BTRFS_SNAPSHOT_BOOTING=%s\\n\"
 "
 +        "\"$GRUB_ENABLE_CRYPTODISK\" \"$GRUB_DISTRIBUTOR\" 
\"$SUSE_BTRFS_SNAPSHOT_BOOTING\"");
  
@@ -70,7 +70,7 @@
 ===================================================================
 --- grub-2.02~beta2.orig/util/grub-install.c
 +++ grub-2.02~beta2/util/grub-install.c
-@@ -816,6 +816,8 @@ fill_core_services (const char *core_ser
+@@ -828,6 +828,8 @@ fill_core_services (const char *core_ser
    free (sysv_plist);
  }
  
@@ -79,7 +79,7 @@
  int
  main (int argc, char *argv[])
  {
-@@ -849,6 +851,9 @@ main (int argc, char *argv[])
+@@ -861,6 +863,9 @@ main (int argc, char *argv[])
  
    grub_util_load_config (&config);
  
@@ -89,7 +89,7 @@
    if (!bootloader_id && config.grub_distributor)
      {
        char *ptr;
-@@ -1334,6 +1339,16 @@ main (int argc, char *argv[])
+@@ -1346,6 +1351,16 @@ main (int argc, char *argv[])
        fprintf (load_cfg_f, "set debug='%s'\n",
              debug_image);
      }
@@ -110,15 +110,15 @@
 ===================================================================
 --- grub-2.02~beta2.orig/grub-core/osdep/linux/getroot.c
 +++ grub-2.02~beta2/grub-core/osdep/linux/getroot.c
-@@ -364,6 +364,7 @@ get_btrfs_fs_prefix (const char *mount_p
-   return ret;
+@@ -370,6 +370,7 @@ get_btrfs_fs_prefix (const char *mount_p
+   return NULL;
  }
  
 +int use_relative_path_on_btrfs = 0;
  
  char **
  grub_find_root_devices_from_mountinfo (const char *dir, char **relroot)
-@@ -502,6 +503,12 @@ grub_find_root_devices_from_mountinfo (c
+@@ -508,6 +509,12 @@ grub_find_root_devices_from_mountinfo (c
        {
          ret = grub_find_root_devices_from_btrfs (dir);
          fs_prefix = get_btrfs_fs_prefix (entries[i].enc_path);

++++++ grub2-btrfs-05-grub2-mkconfig.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -28,7 +28,7 @@
 +++ grub-2.02~beta2/util/grub.d/00_header.in
 @@ -27,6 +27,14 @@ export TEXTDOMAINDIR="@localedir@"
  
- . "@datadir@/@PACKAGE@/grub-mkconfig_lib"
+ . "$pkgdatadir/grub-mkconfig_lib"
  
 +if [ "x${SUSE_BTRFS_SNAPSHOT_BOOTING}" = "xtrue" ] &&
 +   [ "x${GRUB_FS}" = "xbtrfs" ] ; then
@@ -72,7 +72,7 @@
 ===================================================================
 --- grub-2.02~beta2.orig/util/grub-mkconfig.in
 +++ grub-2.02~beta2/util/grub-mkconfig.in
-@@ -255,7 +255,8 @@ export GRUB_DEFAULT \
+@@ -262,7 +262,8 @@ export GRUB_DEFAULT \
    GRUB_OS_PROBER_SKIP_LIST \
    GRUB_DISABLE_SUBMENU \
    GRUB_CMDLINE_LINUX_RECOVERY \
@@ -101,7 +101,7 @@
        fi;;
      xzfs)
        rpool=`${grub_probe} --device ${GRUB_DEVICE} --target=fs_label 
2>/dev/null || true`
-@@ -237,7 +241,12 @@ while [ "x$list" != "x" ] ; do
+@@ -236,7 +240,12 @@ while [ "x$list" != "x" ] ; do
    if [ $PLATFORM != "emu" ]; then
      hotkey=0
    else

++++++ grub2-efi-HP-workaround.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -78,16 +78,16 @@
  
  void
  grub_machine_get_bootlocation (char **device, char **path)
-@@ -67,6 +129,12 @@ grub_machine_get_bootlocation (char **de
-   p = grub_strrchr (*path, '/');
-   if (p)
-     *p = '\0';
+@@ -69,6 +131,12 @@ grub_machine_get_bootlocation (char **de
+       p = grub_strrchr (*path, '/');
+       if (p)
+         *p = '\0';
 +
-+  if ((p = workaround_efi_firmware_path (*device, *path)))
-+    {
-+      grub_free (*path);
-+      *path = p;
-+    }
++      if ((p = workaround_efi_firmware_path (*device, *path)))
++      {
++        grub_free (*path);
++        *path = p;
++      }
+     }
  }
  
- void

++++++ grub2-efi-xen-chainload.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -34,7 +34,7 @@
  
 +ME=$(basename $0)
 +
- . "@datadir@/@PACKAGE@/grub-mkconfig_lib"
+ . "$pkgdatadir/grub-mkconfig_lib"
  
  export TEXTDOMAIN=@PACKAGE@
 @@ -36,9 +38,11 @@ CLASS="--class gnu-linux --class gnu --c
@@ -152,7 +152,7 @@
      if [ x"$is_top_level" != xtrue ]; then
        echo '  }'
      fi
--    xen_list=`echo $xen_list | tr ' ' '\n' | grep -vx $current_xen | tr '\n' 
' '`
+-    xen_list=`echo $xen_list | tr ' ' '\n' | fgrep -vx "$current_xen" | tr 
'\n' ' '`
  done
  
  # If at least one kernel was found, then we need to

++++++ grub2-fix-menu-in-xen-host-server.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -33,8 +33,8 @@
 +++ grub-2.02~beta2/util/grub-mkconfig_lib.in
 @@ -248,6 +248,11 @@ version_test_gt ()
      *.old:*.old) ;;
-     *.old:*) version_test_gt_a="`echo -n "$version_test_gt_a" | sed -e 
's/\.old$//'`" ; version_test_gt_cmp=gt ;;
-     *:*.old) version_test_gt_b="`echo -n "$version_test_gt_b" | sed -e 
's/\.old$//'`" ; version_test_gt_cmp=ge ;;
+     *.old:*) version_test_gt_a="`echo "$version_test_gt_a" | sed -e 
's/\.old$//'`" ; version_test_gt_cmp=gt ;;
+     *:*.old) version_test_gt_b="`echo "$version_test_gt_b" | sed -e 
's/\.old$//'`" ; version_test_gt_cmp=ge ;;
 +# bnc#757895 - Grub2 menu items incorrect when "Xen Virtual Machines Host 
Server" selected
 +# The dbg version should be placed after release version
 +    dbg-*:dbg-*) ;;
@@ -60,11 +60,14 @@
  CLASS="--class gnu-linux --class gnu --class os --class xen"
  
  if [ "x${GRUB_DISTRIBUTOR}" = "x" ] ; then
-@@ -165,9 +171,17 @@ file_is_not_sym () {
+@@ -166,10 +172,18 @@ file_is_not_sym () {
      esac
  }
  
--xen_list=`for i in /boot/xen*; do
+-xen_list=
+-for i in /boot/xen*; do
+-    if grub_file_is_not_garbage "$i" && file_is_not_sym "$i" ; then 
xen_list="$xen_list $i" ; fi
+-done
 +# bnc#877040 - Duplicate entries for boot menu created
 +# only create /boot/xen.gz symlink boot entry
 +if test -L /boot/xen.gz; then
@@ -72,10 +75,10 @@
 +else
 +    # bnc#757895 - Grub2 menu items incorrect when "Xen Virtual Machines Host 
Server" selected
 +    # wildcard expasion with correct suffix (.gz) for not generating many 
duplicated menu entries
-+    xen_list=`for i in /boot/xen*.gz; do
-         if grub_file_is_not_garbage "$i" && file_is_not_sym "$i" ; then echo 
-n "$i " ; fi
--      done`
-+        done`
++    xen_list=
++    for i in /boot/xen*.gz; do
++      if grub_file_is_not_garbage "$i" && file_is_not_sym "$i" ; then 
xen_list="$xen_list $i" ; fi
++    done
 +fi
  prepare_boot_cache=
  boot_device_id=
@@ -84,7 +87,7 @@
 ===================================================================
 --- grub-2.02~beta2.orig/util/grub.d/10_linux.in
 +++ grub-2.02~beta2/util/grub.d/10_linux.in
-@@ -207,6 +207,40 @@ while [ "x$list" != "x" ] ; do
+@@ -209,6 +209,40 @@ while [ "x$list" != "x" ] ; do
      fi
    done
  

++++++ grub2-mkconfig-aarch64.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -6,9 +6,9 @@
 +++ grub-2.02~beta2/util/grub.d/10_linux.in
 @@ -190,6 +190,7 @@ EOF
  machine=`uname -m`
- case "$machine" in
-     i?86 | x86_64) klist="/boot/vmlinuz-* /vmlinuz-* /boot/kernel-*" ;;
-+    aarch64) klist="/boot/Image-* /Image-* /boot/kernel-*" ;;
-     s390 | s390x)  klist="/boot/image-* /boot/kernel-*" ;;
+ case "x$machine" in
+     xi?86 | xx86_64) klist="/boot/vmlinuz-* /vmlinuz-* /boot/kernel-*" ;;
++    xaarch64) klist="/boot/Image-* /Image-* /boot/kernel-*" ;;
+     xs390 | xs390x)  klist="/boot/image-* /boot/kernel-*" ;;
      *) klist="/boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* \
                /boot/kernel-*" ;;

++++++ grub2-mkconfig-arm.patch ++++++
Index: grub-2.02~beta3/util/grub.d/10_linux.in
===================================================================
--- grub-2.02~beta3.orig/util/grub.d/10_linux.in
+++ grub-2.02~beta3/util/grub.d/10_linux.in
@@ -193,6 +193,7 @@ machine=`uname -m`
 case "x$machine" in
     xi?86 | xx86_64) klist="/boot/vmlinuz-* /vmlinuz-* /boot/kernel-*" ;;
     xaarch64) klist="/boot/Image-* /Image-* /boot/kernel-*" ;;
+    xarm*) klist="/boot/zImage-* /zImage-* /boot/kernel-*" ;;
     xs390 | xs390x)  klist="/boot/image-* /boot/kernel-*" ;;
     *) klist="/boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* \
                /boot/kernel-*" ;;
++++++ grub2-ppc64-cas-reboot-support.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -26,9 +26,9 @@
 
 Index: grub-2.02~beta2/grub-core/kern/ieee1275/openfw.c
 ===================================================================
---- grub-2.02~beta2.orig/grub-core/kern/ieee1275/openfw.c
-+++ grub-2.02~beta2/grub-core/kern/ieee1275/openfw.c
-@@ -561,3 +561,65 @@ grub_ieee1275_canonicalise_devname (cons
+--- grub-2.02~beta2.orig/grub-core/kern/ieee1275/openfw.c      2016-01-29 
23:08:47.560532720 +0300
++++ grub-2.02~beta2/grub-core/kern/ieee1275/openfw.c   2016-01-29 
23:08:47.556532720 +0300
+@@ -590,3 +590,65 @@
    return NULL;
  }
  
@@ -96,19 +96,19 @@
 +}
 Index: grub-2.02~beta2/grub-core/normal/main.c
 ===================================================================
---- grub-2.02~beta2.orig/grub-core/normal/main.c
-+++ grub-2.02~beta2/grub-core/normal/main.c
-@@ -32,6 +32,9 @@
- #include <grub/i18n.h>
+--- grub-2.02~beta2.orig/grub-core/normal/main.c       2016-01-29 
23:08:47.560532720 +0300
++++ grub-2.02~beta2/grub-core/normal/main.c    2016-01-29 23:09:59.812533575 
+0300
+@@ -33,6 +33,9 @@
  #include <grub/charset.h>
  #include <grub/script_sh.h>
+ #include <grub/bufio.h>
 +#ifdef GRUB_MACHINE_IEEE1275
 +#include <grub/ieee1275/ieee1275.h>
 +#endif
  
  GRUB_MOD_LICENSE ("GPLv3+");
  
-@@ -267,6 +270,21 @@ grub_normal_execute (const char *config,
+@@ -275,6 +278,21 @@
      {
        menu = read_config_file (config);
  
@@ -132,8 +132,8 @@
      }
 Index: grub-2.02~beta2/grub-core/script/execute.c
 ===================================================================
---- grub-2.02~beta2.orig/grub-core/script/execute.c
-+++ grub-2.02~beta2/grub-core/script/execute.c
+--- grub-2.02~beta2.orig/grub-core/script/execute.c    2016-01-29 
23:08:47.560532720 +0300
++++ grub-2.02~beta2/grub-core/script/execute.c 2016-01-29 23:08:47.560532720 
+0300
 @@ -27,6 +27,9 @@
  #include <grub/normal.h>
  #include <grub/extcmd.h>
@@ -144,7 +144,7 @@
  
  /* Max digits for a char is 3 (0xFF is 255), similarly for an int it
     is sizeof (int) * 3, and one extra for a possible -ve sign.  */
-@@ -861,6 +864,10 @@ grub_script_execute_sourcecode (const ch
+@@ -877,6 +880,10 @@
    grub_err_t ret = 0;
    struct grub_script *parsed_script;
  
@@ -157,9 +157,9 @@
        char *line;
 Index: grub-2.02~beta2/include/grub/ieee1275/ieee1275.h
 ===================================================================
---- grub-2.02~beta2.orig/include/grub/ieee1275/ieee1275.h
-+++ grub-2.02~beta2/include/grub/ieee1275/ieee1275.h
-@@ -234,6 +234,8 @@ int EXPORT_FUNC(grub_ieee1275_devalias_n
+--- grub-2.02~beta2.orig/include/grub/ieee1275/ieee1275.h      2016-01-29 
23:08:47.560532720 +0300
++++ grub-2.02~beta2/include/grub/ieee1275/ieee1275.h   2016-01-29 
23:08:47.560532720 +0300
+@@ -242,6 +242,8 @@
  void EXPORT_FUNC(grub_ieee1275_children_peer) (struct grub_ieee1275_devalias 
*alias);
  void EXPORT_FUNC(grub_ieee1275_children_first) (const char *devpath,
                                                struct grub_ieee1275_devalias 
*alias);

++++++ grub2-s390x-02-kexec-module-added-to-emu.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -11,12 +11,12 @@
 
 Index: grub-2.02~beta2/grub-core/Makefile.core.def
 ===================================================================
---- grub-2.02~beta2.orig/grub-core/Makefile.core.def
-+++ grub-2.02~beta2/grub-core/Makefile.core.def
-@@ -1674,9 +1674,9 @@ module = {
+--- grub-2.02~beta2.orig/grub-core/Makefile.core.def   2016-01-29 
22:59:52.244526390 +0300
++++ grub-2.02~beta2/grub-core/Makefile.core.def        2016-01-29 
22:59:52.240526390 +0300
+@@ -1667,9 +1667,9 @@
+   ia64_efi = loader/ia64/efi/linux.c;
    arm = loader/arm/linux.c;
    arm64 = loader/arm64/linux.c;
-   fdt = lib/fdt.c;
 +  emu = loader/emu/linux.c;
    common = loader/linux.c;
    common = lib/cmdline.c;
@@ -26,8 +26,8 @@
  module = {
 Index: grub-2.02~beta2/grub-core/loader/emu/linux.c
 ===================================================================
---- /dev/null
-+++ grub-2.02~beta2/grub-core/loader/emu/linux.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ grub-2.02~beta2/grub-core/loader/emu/linux.c       2016-01-29 
22:59:52.240526390 +0300
 @@ -0,0 +1,173 @@
 +/*
 + *  GRUB  --  GRand Unified Bootloader
@@ -204,8 +204,8 @@
 +}
 Index: grub-2.02~beta2/include/grub/emu/hostfile.h
 ===================================================================
---- grub-2.02~beta2.orig/include/grub/emu/hostfile.h
-+++ grub-2.02~beta2/include/grub/emu/hostfile.h
+--- grub-2.02~beta2.orig/include/grub/emu/hostfile.h   2016-01-29 
22:59:52.244526390 +0300
++++ grub-2.02~beta2/include/grub/emu/hostfile.h        2016-01-29 
22:59:52.240526390 +0300
 @@ -22,6 +22,7 @@
  #include <grub/disk.h>
  #include <grub/partition.h>
@@ -214,7 +214,7 @@
  #include <grub/osdep/hostfile.h>
  
  int
-@@ -29,7 +30,7 @@ grub_util_is_directory (const char *path
+@@ -29,7 +30,7 @@
  int
  grub_util_is_special_file (const char *path);
  int
@@ -225,8 +225,8 @@
  grub_util_path_concat (size_t n, ...);
 Index: grub-2.02~beta2/include/grub/emu/exec.h
 ===================================================================
---- grub-2.02~beta2.orig/include/grub/emu/exec.h
-+++ grub-2.02~beta2/include/grub/emu/exec.h
+--- grub-2.02~beta2.orig/include/grub/emu/exec.h       2016-01-29 
22:59:52.244526390 +0300
++++ grub-2.02~beta2/include/grub/emu/exec.h    2016-01-29 22:59:52.240526390 
+0300
 @@ -23,6 +23,8 @@
  #include <stdarg.h>
  
@@ -236,7 +236,7 @@
  pid_t
  grub_util_exec_pipe (const char *const *argv, int *fd);
  pid_t
-@@ -32,7 +34,7 @@ int
+@@ -32,7 +34,7 @@
  grub_util_exec_redirect_all (const char *const *argv, const char *stdin_file,
                             const char *stdout_file, const char *stderr_file);
  int
@@ -247,9 +247,9 @@
                         const char *stdout_file);
 Index: grub-2.02~beta2/grub-core/Makefile.am
 ===================================================================
---- grub-2.02~beta2.orig/grub-core/Makefile.am
-+++ grub-2.02~beta2/grub-core/Makefile.am
-@@ -243,6 +243,7 @@ KERNEL_HEADER_FILES += $(top_srcdir)/inc
+--- grub-2.02~beta2.orig/grub-core/Makefile.am 2016-01-29 22:59:52.244526390 
+0300
++++ grub-2.02~beta2/grub-core/Makefile.am      2016-01-29 22:59:52.240526390 
+0300
+@@ -258,6 +258,7 @@
  KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/emu/hostdisk.h
  KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/emu/hostfile.h
  KERNEL_HEADER_FILES += $(top_srcdir)/include/grub/extcmd.h
@@ -259,9 +259,9 @@
  endif
 Index: grub-2.02~beta2/grub-core/kern/emu/main.c
 ===================================================================
---- grub-2.02~beta2.orig/grub-core/kern/emu/main.c
-+++ grub-2.02~beta2/grub-core/kern/emu/main.c
-@@ -95,6 +95,7 @@ static struct argp_option options[] = {
+--- grub-2.02~beta2.orig/grub-core/kern/emu/main.c     2016-01-29 
22:59:52.244526390 +0300
++++ grub-2.02~beta2/grub-core/kern/emu/main.c  2016-01-29 22:59:52.240526390 
+0300
+@@ -106,6 +106,7 @@
     N_("use GRUB files in the directory DIR [default=%s]"), 0},
    {"verbose",     'v', 0,      0, N_("print verbose messages."), 0},
    {"hold",     'H', N_("SECS"),      OPTION_ARG_OPTIONAL, N_("wait until a 
debugger will attach"), 0},
@@ -269,7 +269,7 @@
    { 0, 0, 0, 0, 0, 0 }
  };
  
-@@ -148,6 +149,9 @@ argp_parser (int key, char *arg, struct
+@@ -163,6 +164,9 @@
      case 'v':
        verbosity++;
        break;
@@ -281,9 +281,9 @@
        {
 Index: grub-2.02~beta2/grub-core/kern/emu/misc.c
 ===================================================================
---- grub-2.02~beta2.orig/grub-core/kern/emu/misc.c
-+++ grub-2.02~beta2/grub-core/kern/emu/misc.c
-@@ -38,6 +38,7 @@
+--- grub-2.02~beta2.orig/grub-core/kern/emu/misc.c     2016-01-29 
22:59:52.244526390 +0300
++++ grub-2.02~beta2/grub-core/kern/emu/misc.c  2016-01-29 22:59:52.240526390 
+0300
+@@ -37,6 +37,7 @@
  #include <grub/emu/misc.h>
  
  int verbosity;
@@ -291,7 +291,7 @@
  
  void
  grub_util_warn (const char *fmt, ...)
-@@ -81,7 +82,7 @@ grub_util_error (const char *fmt, ...)
+@@ -80,7 +81,7 @@
    vfprintf (stderr, fmt, ap);
    va_end (ap);
    fprintf (stderr, ".\n");
@@ -300,7 +300,7 @@
  }
  
  void *
-@@ -138,6 +139,9 @@ xasprintf (const char *fmt, ...)
+@@ -138,6 +139,9 @@
  void
  grub_exit (void)
  {
@@ -309,10 +309,10 @@
 +#endif
    exit (1);
  }
+ #endif
+@@ -199,3 +203,15 @@
  
-@@ -150,3 +154,15 @@ grub_get_time_ms (void)
- 
-   return (tv.tv_sec * 1000 + tv.tv_usec / 1000);
+   fclose (fp);
  }
 +
 +void
@@ -328,15 +328,15 @@
 +}
 Index: grub-2.02~beta2/include/grub/emu/misc.h
 ===================================================================
---- grub-2.02~beta2.orig/include/grub/emu/misc.h
-+++ grub-2.02~beta2/include/grub/emu/misc.h
-@@ -59,6 +59,9 @@ void EXPORT_FUNC(grub_util_warn) (const
- void EXPORT_FUNC(grub_util_info) (const char *fmt, ...) __attribute__ 
((format (printf, 1, 2)));
- void EXPORT_FUNC(grub_util_error) (const char *fmt, ...) __attribute__ 
((format (printf, 1, 2), noreturn));
+--- grub-2.02~beta2.orig/include/grub/emu/misc.h       2016-01-29 
22:59:52.244526390 +0300
++++ grub-2.02~beta2/include/grub/emu/misc.h    2016-01-29 22:59:52.240526390 
+0300
+@@ -60,6 +60,9 @@
+ void EXPORT_FUNC(grub_util_info) (const char *fmt, ...) __attribute__ 
((format (__printf__, 1, 2)));
+ void EXPORT_FUNC(grub_util_error) (const char *fmt, ...) __attribute__ 
((format (__printf__, 1, 2), noreturn));
  
 +void EXPORT_FUNC(grub_util_set_kexecute) (void);
 +int EXPORT_FUNC(grub_util_get_kexecute) (void) WARN_UNUSED_RESULT;
 +
  grub_uint64_t EXPORT_FUNC (grub_util_get_cpu_time_ms) (void);
  
- extern char * canonicalize_file_name (const char *path);
+ #ifdef HAVE_DEVICE_MAPPER

++++++ grub2-s390x-04-grub2-install.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -81,7 +81,7 @@
 @@ -385,6 +387,7 @@ program = {
    ldadd = libgrubkern.a;
    ldadd = grub-core/gnulib/libgnu.a;
-   ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBGEOM)';
+   ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBUTIL) $(LIBZFS) $(LIBNVPAIR) 
$(LIBGEOM)';
 +  emu_condition = COND_NOT_s390x;
  };
  
@@ -94,16 +94,7 @@
  };
  
  data = {
-@@ -620,7 +624,7 @@ program = {
-   common = grub-core/disk/host.c;
- 
-   common = util/resolve.c;
--  enable = noemu;
-+  emu_condition = COND_s390x;
-   common = grub-core/kern/emu/argp_common.c;
-   common = grub-core/osdep/init.c;
- 
-@@ -688,6 +692,38 @@ script = {
+@@ -687,6 +691,38 @@ script = {
  };
  
  script = {
@@ -142,7 +133,7 @@
    name = grub-mkconfig_lib;
    common = util/grub-mkconfig_lib.in;
    installdir = noinst;
-@@ -1281,6 +1317,7 @@ program = {
+@@ -1282,6 +1318,7 @@ program = {
    ldadd = libgrubkern.a;
    ldadd = grub-core/gnulib/libgnu.a;
    ldadd = '$(LIBINTL) $(LIBDEVMAPPER) $(LIBZFS) $(LIBNVPAIR) $(LIBGEOM)';
@@ -154,12 +145,12 @@
 ===================================================================
 --- grub-2.02~beta2.orig/configure.ac
 +++ grub-2.02~beta2/configure.ac
-@@ -177,9 +177,9 @@ if test x$platform != xemu ; then
+@@ -181,9 +181,9 @@ if test x$platform != xemu ; then
     esac
  fi
  
 -if test x"$target_cpu-$platform" = xsparc64-emu ; then
--   target_m64=1 ;
+-   target_m64=1
 -fi
 +case x"$target_cpu-$platform" in
 +    xsparc64-emu | xs390x-emu) target_m64=1 ;;
@@ -167,7 +158,7 @@
  
  case "$target_os" in
    windows* | mingw32*) target_os=cygwin ;;
-@@ -1665,6 +1665,9 @@ AM_CONDITIONAL([COND_arm_uboot], [test x
+@@ -1845,6 +1845,9 @@ AM_CONDITIONAL([COND_arm_uboot], [test x
  AM_CONDITIONAL([COND_arm_efi], [test x$target_cpu = xarm -a x$platform = 
xefi])
  AM_CONDITIONAL([COND_arm64], [test x$target_cpu = xarm64 ])
  AM_CONDITIONAL([COND_arm64_efi], [test x$target_cpu = xarm64 -a x$platform = 
xefi])
@@ -181,7 +172,7 @@
 ===================================================================
 --- grub-2.02~beta2.orig/grub-core/Makefile.core.def
 +++ grub-2.02~beta2/grub-core/Makefile.core.def
-@@ -1064,6 +1064,7 @@ module = {
+@@ -1050,6 +1050,7 @@ module = {
  module = {
    name = videotest;
    common = commands/videotest.c;
@@ -189,7 +180,7 @@
  };
  
  module = {
-@@ -1477,6 +1478,7 @@ module = {
+@@ -1462,6 +1463,7 @@ module = {
    common = gfxmenu/gui_progress_bar.c;
    common = gfxmenu/gui_util.c;
    common = gfxmenu/gui_string_util.c;
@@ -197,7 +188,7 @@
  };
  
  module = {
-@@ -1856,11 +1858,13 @@ module = {
+@@ -1841,11 +1843,13 @@ module = {
    name = gfxterm;
    common = term/gfxterm.c;
    enable = videomodules;
@@ -211,7 +202,7 @@
  };
  
  module = {
-@@ -1975,6 +1979,7 @@ module = {
+@@ -1960,6 +1964,7 @@ module = {
    enable = x86_64_efi;
    enable = emu;
    enable = xen;
@@ -219,7 +210,7 @@
  };
  
  module = {
-@@ -1990,6 +1995,7 @@ module = {
+@@ -2006,6 +2011,7 @@ module = {
  module = {
    name = gfxterm_menu;
    common = tests/gfxterm_menu.c;
@@ -227,7 +218,7 @@
  };
  
  module = {
-@@ -2142,6 +2148,7 @@ module = {
+@@ -2158,6 +2164,7 @@ module = {
    enable = x86_64_efi;
    enable = emu;
    enable = xen;
@@ -295,7 +286,7 @@
      GRUB_INSTALL_PLATFORM_MAX
    };
  
-@@ -217,6 +218,9 @@ void
+@@ -219,6 +220,9 @@ void
  grub_install_sgi_setup (const char *install_device,
                        const char *imgfile, const char *destname);
  
@@ -309,7 +300,7 @@
 ===================================================================
 --- grub-2.02~beta2.orig/util/grub-install-common.c
 +++ grub-2.02~beta2/util/grub-install-common.c
-@@ -665,6 +665,7 @@ static struct
+@@ -666,6 +666,7 @@ static struct
      [GRUB_INSTALL_PLATFORM_ARM_EFI] =          { "arm",     "efi"       },
      [GRUB_INSTALL_PLATFORM_ARM64_EFI] =        { "arm64",   "efi"       },
      [GRUB_INSTALL_PLATFORM_ARM_UBOOT] =        { "arm",     "uboot"     },
@@ -329,7 +320,7 @@
  static int force = 0;
  static int have_abstractions = 0;
  static int have_cryptodisk = 0;
-@@ -107,6 +108,7 @@ enum
+@@ -106,6 +107,7 @@ enum
      OPTION_NO_BOOTSECTOR,
      OPTION_NO_RS_CODES,
      OPTION_MACPPC_DIRECTORY,
@@ -337,7 +328,7 @@
      OPTION_LABEL_FONT,
      OPTION_LABEL_COLOR,
      OPTION_LABEL_BGCOLOR,
-@@ -182,6 +184,11 @@ argp_parser (int key, char *arg, struct
+@@ -181,6 +183,11 @@ argp_parser (int key, char *arg, struct
        efidir = xstrdup (arg);
        return 0;
  
@@ -349,7 +340,7 @@
      case OPTION_DISK_MODULE:
        free (disk_module);
        disk_module = xstrdup (arg);
-@@ -299,6 +306,8 @@ static struct argp_option options[] = {
+@@ -298,6 +305,8 @@ static struct argp_option options[] = {
     N_("use DIR as the EFI System Partition root."), 2},
    {"macppc-directory", OPTION_MACPPC_DIRECTORY, N_("DIR"), 0,
     N_("use DIR for PPC MAC install."), 2},
@@ -358,7 +349,7 @@
    {"label-font", OPTION_LABEL_FONT, N_("FILE"), 0, N_("use FILE as font for 
label"), 2},
    {"label-color", OPTION_LABEL_COLOR, N_("COLOR"), 0, N_("use COLOR for 
label"), 2},
    {"label-bgcolor", OPTION_LABEL_BGCOLOR, N_("COLOR"), 0, N_("use COLOR for 
label background"), 2},
-@@ -325,6 +334,8 @@ get_default_platform (void)
+@@ -324,6 +333,8 @@ get_default_platform (void)
     return "arm64-efi";
  #elif defined (__amd64__) || defined (__x86_64__) || defined (__i386__)
     return grub_install_get_default_x86_platform ();
@@ -367,7 +358,7 @@
  #else
     return NULL;
  #endif
-@@ -484,6 +495,8 @@ have_bootdev (enum grub_install_plat pl)
+@@ -495,6 +506,8 @@ have_bootdev (enum grub_install_plat pl)
  
      case GRUB_INSTALL_PLATFORM_I386_XEN:
      case GRUB_INSTALL_PLATFORM_X86_64_XEN:
@@ -376,7 +367,7 @@
        return 0;
  
        /* pacify warning.  */
-@@ -895,6 +908,7 @@ main (int argc, char *argv[])
+@@ -907,6 +920,7 @@ main (int argc, char *argv[])
      case GRUB_INSTALL_PLATFORM_ARM_UBOOT:
      case GRUB_INSTALL_PLATFORM_I386_XEN:
      case GRUB_INSTALL_PLATFORM_X86_64_XEN:
@@ -384,7 +375,7 @@
        break;
  
      case GRUB_INSTALL_PLATFORM_I386_QEMU:
-@@ -940,6 +954,7 @@ main (int argc, char *argv[])
+@@ -952,6 +966,7 @@ main (int argc, char *argv[])
      case GRUB_INSTALL_PLATFORM_MIPS_QEMU_MIPS:
      case GRUB_INSTALL_PLATFORM_I386_XEN:
      case GRUB_INSTALL_PLATFORM_X86_64_XEN:
@@ -392,7 +383,7 @@
        free (install_device);
        install_device = NULL;
        break;
-@@ -1201,6 +1216,20 @@ main (int argc, char *argv[])
+@@ -1213,6 +1228,20 @@ main (int argc, char *argv[])
        }
      }
  
@@ -413,7 +404,7 @@
    grub_install_copy_files (grub_install_source_directory,
                           grubdir, platform);
  
-@@ -1445,6 +1474,7 @@ main (int argc, char *argv[])
+@@ -1457,6 +1486,7 @@ main (int argc, char *argv[])
                  case GRUB_INSTALL_PLATFORM_ARM_UBOOT:
                  case GRUB_INSTALL_PLATFORM_I386_XEN:
                  case GRUB_INSTALL_PLATFORM_X86_64_XEN:
@@ -421,7 +412,7 @@
                    grub_util_warn ("%s", _("no hints available for your 
platform. Expect reduced performance"));
                    break;
                    /* pacify warning.  */
-@@ -1557,6 +1587,10 @@ main (int argc, char *argv[])
+@@ -1569,6 +1599,10 @@ main (int argc, char *argv[])
        strcpy (mkimage_target, "sparc64-ieee1275-raw");
        core_name = "core.img";
        break;
@@ -432,7 +423,7 @@
        /* pacify warning.  */
      case GRUB_INSTALL_PLATFORM_MAX:
        break;
-@@ -1572,6 +1606,7 @@ main (int argc, char *argv[])
+@@ -1584,6 +1618,7 @@ main (int argc, char *argv[])
                                       core_name);
    char *prefix = xasprintf ("%s%s", prefix_drive ? : "",
                            relative_grubdir);
@@ -440,7 +431,7 @@
    grub_install_make_image_wrap (/* source dir  */ 
grub_install_source_directory,
                                /*prefix */ prefix,
                                /* output */ imgfile,
-@@ -1610,6 +1645,10 @@ main (int argc, char *argv[])
+@@ -1622,6 +1657,10 @@ main (int argc, char *argv[])
                                       /* image target */ mkimage_target, 0);
        }
        break;
@@ -451,7 +442,7 @@
      case GRUB_INSTALL_PLATFORM_ARM_EFI:
      case GRUB_INSTALL_PLATFORM_ARM64_EFI:
      case GRUB_INSTALL_PLATFORM_IA64_EFI:
-@@ -1871,6 +1910,10 @@ main (int argc, char *argv[])
+@@ -1883,6 +1922,10 @@ main (int argc, char *argv[])
        }
        break;
  

++++++ grub2-s390x-05-grub2-mkconfig.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -81,34 +81,33 @@
    message="$(gettext_printf "Loading Linux %s ..." ${version})"
    if [ -d /sys/firmware/efi ] && [ "x${GRUB_USE_LINUXEFI}" = "xtrue" ]; then
      sed "s/^/$submenu_indentation/" << EOF
-@@ -165,16 +188,17 @@ EOF
- }
+@@ -166,17 +189,15 @@ EOF
  
  machine=`uname -m`
--case "x$machine" in
+ case "x$machine" in
 -    xi?86 | xx86_64)
--      list=`for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do
--                  if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
--              done` ;;
+-      list=
+-      for i in /boot/vmlinuz-* /vmlinuz-* /boot/kernel-* ; do
+-          if grub_file_is_not_garbage "$i" ; then list="$list $i" ; fi
+-      done ;;
 -    *) 
--      list=`for i in /boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* 
/boot/kernel-* ; do
--                  if grub_file_is_not_garbage "$i" ; then echo -n "$i " ; fi
--           done` ;;
-+case "$machine" in
-+    i?86 | x86_64) klist="/boot/vmlinuz-* /vmlinuz-* /boot/kernel-*" ;;
-+    s390 | s390x)  klist="/boot/image-* /boot/kernel-*" ;;
+-      list=
+-      for i in /boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* 
/boot/kernel-* ; do
+-                  if grub_file_is_not_garbage "$i" ; then list="$list $i" ; fi
+-      done ;;
++    xi?86 | xx86_64) klist="/boot/vmlinuz-* /vmlinuz-* /boot/kernel-*" ;;
++    xs390 | xs390x)  klist="/boot/image-* /boot/kernel-*" ;;
 +    *) klist="/boot/vmlinuz-* /boot/vmlinux-* /vmlinuz-* /vmlinux-* \
 +              /boot/kernel-*" ;;
  esac
-+list=`for i in $klist; do
-+    if grub_file_is_not_garbage "$i" ; then
-+        echo -n "$i " ;
-+    fi
-+    done`
++list=
++for i in $klist ; do
++    if grub_file_is_not_garbage "$i" ; then list="$list $i" ; fi
++done
  
  case "$machine" in
      i?86) GENKERNEL_ARCH="x86" ;;
-@@ -184,6 +208,15 @@ case "$machine" in
+@@ -186,6 +207,15 @@ case "$machine" in
      *) GENKERNEL_ARCH="$machine" ;;
  esac
  
@@ -124,7 +123,7 @@
  prepare_boot_cache=
  prepare_root_cache=
  boot_device_id=
-@@ -200,6 +233,11 @@ while [ "x$list" != "x" ] ; do
+@@ -202,6 +232,11 @@ while [ "x$list" != "x" ] ; do
    basename=`basename $linux`
    dirname=`dirname $linux`
    rel_dirname=`make_system_path_relative_to_its_root $dirname`
@@ -136,7 +135,7 @@
    version=`echo $basename | sed -e "s,^[^0-9]*-,,g"`
    alt_version=`echo $version | sed -e "s,\.old$,,g"`
    linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
-@@ -284,7 +322,8 @@ while [ "x$list" != "x" ] ; do
+@@ -286,7 +321,8 @@ while [ "x$list" != "x" ] ; do
        boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")"
      fi
      # TRANSLATORS: %s is replaced with an OS name

++++++ grub2-secureboot-add-linuxefi.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -19,7 +19,7 @@
 ===================================================================
 --- grub-2.02~beta2.orig/grub-core/Makefile.core.def
 +++ grub-2.02~beta2/grub-core/Makefile.core.def
-@@ -1706,6 +1706,14 @@ module = {
+@@ -1691,6 +1691,14 @@ module = {
  };
  
  module = {
@@ -320,7 +320,7 @@
 +      goto fail;
 +    }
 +
-+  memset (params, 0, 16384);
++  grub_memset (params, 0, 16384);
 +
 +  if (grub_file_read (file, &lh, sizeof (lh)) != sizeof (lh))
 +    {
@@ -408,7 +408,7 @@
 +      lh.code32_start = (grub_uint32_t)(grub_addr_t) kernel_mem;
 +    }
 +
-+  memcpy(params, &lh, 2 * 512);
++  grub_memcpy(params, &lh, 2 * 512);
 +
 +  params->type_of_loader = 0x21;
 +

++++++ grub2-secureboot-chainloader.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -642,9 +642,9 @@
                       &image_handle);
    if (status != GRUB_EFI_SUCCESS)
      {
-@@ -352,33 +853,10 @@ grub_cmd_chainloader (grub_command_t cmd
- 
-   grub_file_close (file);
+@@ -350,33 +851,10 @@ grub_cmd_chainloader (grub_command_t cmd
+     }
+   loaded_image->device_handle = dev_handle;
  
 -  if (argc > 1)
 +  if (cmdline)
@@ -677,8 +677,8 @@
 +      loaded_image->load_options_size = cmdline_len;
      }
  
-   grub_loader_set (grub_chainloader_boot, grub_chainloader_unload, 0);
-@@ -397,6 +875,9 @@ grub_cmd_chainloader (grub_command_t cmd
+   grub_file_close (file);
+@@ -398,6 +876,9 @@ grub_cmd_chainloader (grub_command_t cmd
    if (address)
      efi_call_2 (b->free_pages, address, pages);
  

++++++ rename-grub-info-file-to-grub2.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -12,10 +12,10 @@
 manually rename it.
 ---
 
-Index: grub-2.02~beta1/docs/Makefile.am
+Index: grub-2.02~beta3/docs/Makefile.am
 ===================================================================
---- grub-2.02~beta1.orig/docs/Makefile.am
-+++ grub-2.02~beta1/docs/Makefile.am
+--- grub-2.02~beta3.orig/docs/Makefile.am      2016-02-28 19:19:14.788874638 
+0300
++++ grub-2.02~beta3/docs/Makefile.am   2016-02-28 19:19:14.780874638 +0300
 @@ -1,7 +1,7 @@
  AUTOMAKE_OPTIONS = subdir-objects
  
@@ -25,91 +25,10 @@
  grub_TEXINFOS = fdl.texi
  
  EXTRA_DIST = font_char_metrics.png font_char_metrics.txt
-Index: grub-2.02~beta1/docs/Makefile.in
+Index: grub-2.02~beta3/docs/grub.texi
 ===================================================================
---- grub-2.02~beta1.orig/docs/Makefile.in
-+++ grub-2.02~beta1/docs/Makefile.in
-@@ -79,7 +79,7 @@ host_triplet = @host@
- target_triplet = @target@
- subdir = docs
- DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
--      $(grub_TEXINFOS) $(top_srcdir)/build-aux/mdate-sh \
-+      $(top_srcdir)/build-aux/mdate-sh \
-       $(srcdir)/version.texi $(srcdir)/stamp-vti \
-       $(srcdir)/version-dev.texi $(srcdir)/stamp-1 \
-       $(top_srcdir)/build-aux/texinfo.tex mdate-sh texinfo.tex
-@@ -184,14 +184,14 @@ AM_V_texidevnull = $(am__v_texidevnull_@
- am__v_texidevnull_ = $(am__v_texidevnull_@AM_DEFAULT_V@)
- am__v_texidevnull_0 = > /dev/null
- am__v_texidevnull_1 = 
--INFO_DEPS = $(srcdir)/grub.info $(srcdir)/grub-dev.info
-+INFO_DEPS = $(srcdir)/grub2.info $(srcdir)/grub-dev.info
- TEXINFO_TEX = $(top_srcdir)/build-aux/texinfo.tex
- am__TEXINFO_TEX_DIR = $(top_srcdir)/build-aux
--DVIS = grub.dvi grub-dev.dvi
--PDFS = grub.pdf grub-dev.pdf
--PSS = grub.ps grub-dev.ps
--HTMLS = grub.html grub-dev.html
--TEXINFOS = grub.texi grub-dev.texi
-+DVIS = grub2.dvi grub-dev.dvi
-+PDFS = grub2.pdf grub-dev.pdf
-+PSS = grub2.ps grub-dev.ps
-+HTMLS = grub2.html grub-dev.html
-+TEXINFOS = grub2.texi grub-dev.texi
- TEXI2DVI = texi2dvi
- TEXI2PDF = $(TEXI2DVI) --pdf --batch
- MAKEINFOHTML = $(MAKEINFO) --html
-@@ -1068,7 +1068,7 @@ top_srcdir = @top_srcdir@
- AUTOMAKE_OPTIONS = subdir-objects
- 
- # AM_MAKEINFOFLAGS = --no-split --no-validate
--info_TEXINFOS = grub.texi grub-dev.texi
-+info_TEXINFOS = grub2.texi grub-dev.texi
- grub_TEXINFOS = fdl.texi
- EXTRA_DIST = font_char_metrics.png font_char_metrics.txt
- all: all-am
-@@ -1149,14 +1149,14 @@ $(am__aclocal_m4_deps):
-       else \
-         rm -rf $(@:.html=.htp); exit 1; \
-       fi
--$(srcdir)/grub.info: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS)
--grub.dvi: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS)
--grub.pdf: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS)
--grub.html: grub.texi $(srcdir)/version.texi $(grub_TEXINFOS)
-+$(srcdir)/grub2.info: grub2.texi $(srcdir)/version.texi
-+grub2.dvi: grub2.texi $(srcdir)/version.texi
-+grub2.pdf: grub2.texi $(srcdir)/version.texi
-+grub2.html: grub2.texi $(srcdir)/version.texi
- $(srcdir)/version.texi:  $(srcdir)/stamp-vti
--$(srcdir)/stamp-vti: grub.texi $(top_srcdir)/configure
--      @(dir=.; test -f ./grub.texi || dir=$(srcdir); \
--      set `$(SHELL) $(top_srcdir)/build-aux/mdate-sh $$dir/grub.texi`; \
-+$(srcdir)/stamp-vti: grub2.texi $(top_srcdir)/configure
-+      @(dir=.; test -f ./grub2.texi || dir=$(srcdir); \
-+      set `$(SHELL) $(top_srcdir)/build-aux/mdate-sh $$dir/grub2.texi`; \
-       echo "@set UPDATED $$1 $$2 $$3"; \
-       echo "@set UPDATED-MONTH $$2 $$3"; \
-       echo "@set EDITION $(VERSION)"; \
-@@ -1276,12 +1276,12 @@ dist-info: $(INFO_DEPS)
-       done
- 
- mostlyclean-aminfo:
--      -rm -rf grub.t2d grub.t2p grub-dev.t2d grub-dev.t2p
-+      -rm -rf grub2.t2d grub2.t2p grub-dev.t2d grub-dev.t2p
- 
- clean-aminfo:
--      -test -z "grub.dvi grub.pdf grub.ps grub.html grub-dev.dvi grub-dev.pdf 
\
-+      -test -z "grub2.dvi grub2.pdf grub2.ps grub2.html grub-dev.dvi 
grub-dev.pdf \
-         grub-dev.ps grub-dev.html" \
--      || rm -rf grub.dvi grub.pdf grub.ps grub.html grub-dev.dvi grub-dev.pdf 
\
-+      || rm -rf grub2.dvi grub2.pdf grub2.ps grub2.html grub-dev.dvi 
grub-dev.pdf \
-         grub-dev.ps grub-dev.html
- 
- maintainer-clean-aminfo:
-Index: grub-2.02~beta1/docs/grub.texi
-===================================================================
---- grub-2.02~beta1.orig/docs/grub.texi
-+++ grub-2.02~beta1/docs/grub.texi
+--- grub-2.02~beta3.orig/docs/grub.texi        2016-02-28 19:19:14.788874638 
+0300
++++ grub-2.02~beta3/docs/grub.texi     2016-02-28 19:19:14.784874638 +0300
 @@ -1,7 +1,7 @@
  \input texinfo
  @c -*-texinfo-*-

++++++ use-grub2-as-a-package-name.patch ++++++
--- /var/tmp/diff_new_pack.TgRVzg/_old  2016-03-07 13:26:33.000000000 +0100
+++ /var/tmp/diff_new_pack.TgRVzg/_new  2016-03-07 13:26:33.000000000 +0100
@@ -12,16 +12,16 @@
  configure.ac |    2 +-
  2 files changed, 13 insertions(+), 13 deletions(-)
 
-Index: grub-2.02~beta2/configure.ac
+Index: grub-2.02~beta3/configure.ac
 ===================================================================
---- grub-2.02~beta2.orig/configure.ac
-+++ grub-2.02~beta2/configure.ac
-@@ -32,7 +32,7 @@ dnl type, so there is no conflict. Varia
- dnl (such as TARGET_CC, TARGET_CFLAGS, etc.) are used for the target
- dnl type.
+--- grub-2.02~beta3.orig/configure.ac  2016-02-28 19:22:28.028876923 +0300
++++ grub-2.02~beta3/configure.ac       2016-02-28 19:22:57.596877272 +0300
+@@ -31,7 +31,7 @@
+ dnl with the prefix "TARGET_" (such as TARGET_CC, TARGET_CFLAGS, etc.) are
+ dnl used for the target type. See INSTALL for full list of variables.
  
--AC_INIT([GRUB],[2.02~beta2],[[email protected]])
-+AC_INIT([GRUB2],[2.02~beta2],[[email protected]])
+-AC_INIT([GRUB],[2.02~beta3],[[email protected]])
++AC_INIT([GRUB2],[2.02~beta3],[[email protected]])
  
  AC_CONFIG_AUX_DIR([build-aux])
  


Reply via email to