Hello community,

here is the log from the commit of package grub2 for openSUSE:Factory checked 
in at 2020-11-05 21:53:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/grub2 (Old)
 and      /work/SRC/openSUSE:Factory/.grub2.new.11331 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "grub2"

Thu Nov  5 21:53:08 2020 rev:231 rq:845585 version:2.04

Changes:
--------
--- /work/SRC/openSUSE:Factory/grub2/grub2.changes      2020-10-26 
16:12:16.394714020 +0100
+++ /work/SRC/openSUSE:Factory/.grub2.new.11331/grub2.changes   2020-11-05 
21:53:10.404419783 +0100
@@ -1,0 +2,6 @@
+Mon Nov  2 06:42:04 UTC 2020 - Michael Chang <mch...@suse.com>
+
+- Fix boot failure in blocklist installation (bsc#1178278)
+  * Modified 0002-grub-install-Avoid-incompleted-install-on-i386-pc.patch
+
+-------------------------------------------------------------------

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

Other differences:
------------------
++++++ 0002-grub-install-Avoid-incompleted-install-on-i386-pc.patch ++++++
--- /var/tmp/diff_new_pack.xZuldl/_old  2020-11-05 21:53:12.716414585 +0100
+++ /var/tmp/diff_new_pack.xZuldl/_new  2020-11-05 21:53:12.716414585 +0100
@@ -18,6 +18,11 @@
     This fixed "failed to get canonical path of `/boot/grub2/i386-pc`"
     error during grub-install.
 
+V2: Do not clean up core.img and boot.img in i386-pc platform directory.
+    The core.img is required by blocklist install that will load it from
+    platform directory. Both files can be used by grub2-bios-setup to
+    reinstall images to disk made by previous grub2-install.
+
 Signed-off-by: Michael Chang <mch...@suse.com>
 ---
  util/grub-install.c | 7 +++++--
@@ -56,3 +61,37 @@
        break;
        }
      case GRUB_INSTALL_PLATFORM_SPARC64_IEEE1275:
+Index: grub-2.04/util/grub-install-common.c
+===================================================================
+--- grub-2.04.orig/util/grub-install-common.c
++++ grub-2.04/util/grub-install-common.c
+@@ -190,18 +190,28 @@ clean_grub_dir (const char *di)
+ {
+   grub_util_fd_dir_t d;
+   grub_util_fd_dirent_t de;
++  int skip_img = 0;
+ 
+   d = grub_util_fd_opendir (di);
+   if (!d)
+     grub_util_error (_("cannot open directory `%s': %s"),
+                    di, grub_util_fd_strerror ());
+ 
++  {
++    char *plat_i386_pc = grub_install_get_platform_name 
(GRUB_INSTALL_PLATFORM_I386_PC);
++    const char *plat = strrchr (di, '/');
++
++    if (plat && strcmp (plat + 1, plat_i386_pc) == 0)
++      skip_img = 1;
++    free (plat_i386_pc);
++  }
++
+   while ((de = grub_util_fd_readdir (d)))
+     {
+       const char *ext = strrchr (de->d_name, '.');
+       if ((ext && (strcmp (ext, ".mod") == 0
+                  || strcmp (ext, ".lst") == 0
+-                 || strcmp (ext, ".img") == 0
++                 || (!skip_img && strcmp (ext, ".img") == 0)
+                  || strcmp (ext, ".mo") == 0)
+          && strcmp (de->d_name, "menu.lst") != 0)
+         || strcmp (de->d_name, "efiemu32.o") == 0




Reply via email to