diff --git a/ChangeLog b/ChangeLog index 43dcf9341..981991bd7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-03-24 Vladimir Serbinenko + + * util/grub.d/20_linux_xen.in: Automatically add no-real-mode edd=off on + non-BIOS platforms. + 2013-03-24 Vladimir Serbinenko * grub-core/Makefile.core.def (vga): Disable on coreboot and multiboot diff --git a/util/grub.d/20_linux_xen.in b/util/grub.d/20_linux_xen.in index ac05ee447..6651cbcf0 100644 --- a/util/grub.d/20_linux_xen.in +++ b/util/grub.d/20_linux_xen.in @@ -121,7 +121,12 @@ linux_entry () lmessage="$(gettext_printf "Loading Linux %s ..." ${version})" sed "s/^/$submenu_indentation/" << EOF echo '$(echo "$xmessage" | grub_quote)' - multiboot ${rel_xen_dirname}/${xen_basename} placeholder ${xen_args} + if [ "\$grub_platform" = "pc" -o "\$grub_platform" = "" ]; then + xen_rm_opts= + else + xen_rm_opts="no-real-mode edd=off" + fi + multiboot ${rel_xen_dirname}/${xen_basename} placeholder ${xen_args} \${xen_rm_opts} echo '$(echo "$lmessage" | grub_quote)' module ${rel_dirname}/${basename} placeholder root=${linux_root_device_thisversion} ro ${args} EOF