[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 1/2] Fix util/grub.d/20_linux_xen.in: Add xen_boot command su
From: |
Fu Wei Fu |
Subject: |
Re: [PATCH 1/2] Fix util/grub.d/20_linux_xen.in: Add xen_boot command support for aarch64 |
Date: |
Tue, 29 Aug 2017 15:12:59 +0800 |
Hi Konrad,
Thanks for your feedback.
On 29 August 2017 at 02:40, Konrad Rzeszutek Wilk
<address@hidden> wrote:
> Commit d33045ce7ffcb7c1e4a60c14d5ca64b36e3c5abe introduced
> the support for this, but it does not work under x86 (as it stops
> 20_linux_xen from running).
>
> The 20_linux_xen is run under a shell and any exits from within it:
>
For your example
> (For example on x86):
> + /usr/bin/grub2-file --is-arm64-efi /boot/xen-4.9.0.gz
> address@hidden grub]# echo $?
> 1
I guess that is right behavior, then
xen_loader="multiboot"
module_loader="module"
/boot/xen-4.9.0.gz is a xen binary for x86, right?
>
> will result in 20_linux_xen exciting without continuing
> and also causing grub2-mkconfig to stop processing.
maybe we are using different shell? are you using ash?
>
> As in:
>
> address@hidden ~]#
>
> And no more.
>
> This patch wraps the invocation of grub-file to be a in subshell
> and to process the return value in a conditional. That fixes
> the issue.
>
> RH-BZ 1486002: grub2-mkconfig does not work if xen.gz is installed.
> CC: Fu Wei <address@hidden>
> Signed-off-by: Konrad Rzeszutek Wilk <address@hidden>
> ---
> util/grub.d/20_linux_xen.in | 9 ++++-----
> 1 file changed, 4 insertions(+), 5 deletions(-)
>
> diff --git a/util/grub.d/20_linux_xen.in b/util/grub.d/20_linux_xen.in
> index c002fc9..083bcef 100644
> --- a/util/grub.d/20_linux_xen.in
> +++ b/util/grub.d/20_linux_xen.in
> @@ -206,13 +206,12 @@ while [ "x${xen_list}" != "x" ] ; do
> if [ "x$is_top_level" != xtrue ]; then
> echo " submenu '$(gettext_printf "Xen hypervisor, version %s"
> "${xen_version}" | grub_quote)' \$menuentry_id_option
> 'xen-hypervisor-$xen_version-$boot_device_id' {"
> fi
> - $grub_file --is-arm64-efi $current_xen
> - if [ $? -ne 0 ]; then
> - xen_loader="multiboot"
> - module_loader="module"
> - else
> + if ($grub_file --is-arm64-efi $current_xen); then
> xen_loader="xen_hypervisor"
> module_loader="xen_module"
> + else
> + xen_loader="multiboot"
> + module_loader="module"
> fi
> while [ "x$list" != "x" ] ; do
> linux=`version_find_latest $list`
> --
> 2.1.4
>
--
Best regards,
Fu Wei
Software Engineer
Red Hat