[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [OSSTEST PATCH v2 21/23] 20_linux_xen: Use multiboot2 when Xen supports it



This is necessary for UEFI.  The patch is similar in spirit to the
upstream commit
  
http://git.savannah.gnu.org/cgit/grub.git/commit/?id=b4d709b6ee789cdaf3fa7a80fd90c721a16f48c2

A backport of that commit to Debian buster was requested in
  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=898947
so hopefully this will not be necessary after stretch.

Signed-off-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
---
 overlay-jessie/etc/grub.d/20_linux_xen  | 14 ++++++++++----
 overlay-stretch/etc/grub.d/20_linux_xen | 14 ++++++++++----
 2 files changed, 20 insertions(+), 8 deletions(-)

diff --git a/overlay-jessie/etc/grub.d/20_linux_xen 
b/overlay-jessie/etc/grub.d/20_linux_xen
index aaead1b..885f204 100755
--- a/overlay-jessie/etc/grub.d/20_linux_xen
+++ b/overlay-jessie/etc/grub.d/20_linux_xen
@@ -118,24 +118,30 @@ linux_entry ()
   printf '%s\n' "${prepare_boot_cache}"
   xmessage="$(gettext_printf "Loading Xen %s ..." ${xen_version})"
   lmessage="$(gettext_printf "Loading Linux %s ..." ${version})"
+  xen_loader=multiboot
+  xen_module=module
+  if grub-file --is-x86-multiboot2 $current_xen; then
+    xen_loader=multiboot2
+    xen_module=module2
+  fi
   cat << EOF
        echo    '$xmessage'
-       multiboot       ${rel_xen_dirname}/${xen_basename} placeholder 
${xen_args}
+       $xen_loader     ${rel_xen_dirname}/${xen_basename} placeholder 
${xen_args}
        echo    '$lmessage'
-       module  ${rel_dirname}/${basename} placeholder 
root=${linux_root_device_thisversion} ro ${args}
+       $xen_module     ${rel_dirname}/${basename} placeholder 
root=${linux_root_device_thisversion} ro ${args}
 EOF
   if test -n "${initrd}" ; then
     message="$(gettext_printf "Loading initial ramdisk ...")"
     cat << EOF
        echo    '$message'
-       module  ${rel_dirname}/${initrd}
+       $xen_module     ${rel_dirname}/${initrd}
 EOF
   fi
   if test -n "${xenpolicy}" ; then
     message="$(gettext_printf "Loading XSM policy ...")"
     cat << EOF
        echo    '$message'
-       module  ${rel_dirname}/${xenpolicy}
+       $xen_module     ${rel_dirname}/${xenpolicy}
 EOF
   fi
   cat << EOF
diff --git a/overlay-stretch/etc/grub.d/20_linux_xen 
b/overlay-stretch/etc/grub.d/20_linux_xen
index aaead1b..885f204 100755
--- a/overlay-stretch/etc/grub.d/20_linux_xen
+++ b/overlay-stretch/etc/grub.d/20_linux_xen
@@ -118,24 +118,30 @@ linux_entry ()
   printf '%s\n' "${prepare_boot_cache}"
   xmessage="$(gettext_printf "Loading Xen %s ..." ${xen_version})"
   lmessage="$(gettext_printf "Loading Linux %s ..." ${version})"
+  xen_loader=multiboot
+  xen_module=module
+  if grub-file --is-x86-multiboot2 $current_xen; then
+    xen_loader=multiboot2
+    xen_module=module2
+  fi
   cat << EOF
        echo    '$xmessage'
-       multiboot       ${rel_xen_dirname}/${xen_basename} placeholder 
${xen_args}
+       $xen_loader     ${rel_xen_dirname}/${xen_basename} placeholder 
${xen_args}
        echo    '$lmessage'
-       module  ${rel_dirname}/${basename} placeholder 
root=${linux_root_device_thisversion} ro ${args}
+       $xen_module     ${rel_dirname}/${basename} placeholder 
root=${linux_root_device_thisversion} ro ${args}
 EOF
   if test -n "${initrd}" ; then
     message="$(gettext_printf "Loading initial ramdisk ...")"
     cat << EOF
        echo    '$message'
-       module  ${rel_dirname}/${initrd}
+       $xen_module     ${rel_dirname}/${initrd}
 EOF
   fi
   if test -n "${xenpolicy}" ; then
     message="$(gettext_printf "Loading XSM policy ...")"
     cat << EOF
        echo    '$message'
-       module  ${rel_dirname}/${xenpolicy}
+       $xen_module     ${rel_dirname}/${xenpolicy}
 EOF
   fi
   cat << EOF
-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.