qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 3/3] xen: make xen_enabled even more clever


From: Anthony PERARD
Subject: Re: [Qemu-devel] [PATCH 3/3] xen: make xen_enabled even more clever
Date: Mon, 18 Jul 2011 14:52:51 +0100

On Sun, Jul 17, 2011 at 06:39, Alexander Graf <address@hidden> wrote:
> When using xen_enabled() we're currently only checking if xen is enabled
> at all during the build. But what if you want to build multiple targets
> out of which only one can potentially run xen code?
>
> That means that for generic code we'll still have to fall back to the
> variable and potentially slow the code down, but it's not as important as
> that is mostly xen device emulation which is not touched for non-xen targets.
>
> The target specific code however can with this patch see that it's unable to
> ever execute xen code. We can thus always return 0 on xen_enabled(), giving
> gcc enough hints to evict the mapcache code from the target memory management
> code.
>
> Signed-off-by: Alexander Graf <address@hidden>
> ---
>  configure |    5 +++++
>  hw/xen.h  |    2 +-
>  2 files changed, 6 insertions(+), 1 deletions(-)
>
> diff --git a/configure b/configure
> index f537130..f79b23b 100755
> --- a/configure
> +++ b/configure
> @@ -3235,7 +3235,12 @@ case "$target_arch2" in
>     if test "$xen" = "yes" -a "$target_softmmu" = "yes" ; then
>       target_phys_bits=64
>       echo "CONFIG_XEN=y" >> $config_target_mak
> +    else
> +      echo "CONFIG_NO_XEN=y" >> $config_target_mak
>     fi
> +    ;;
> +  *)
> +    echo "CONFIG_NO_XEN=y" >> $config_target_mak
>  esac
>  case "$target_arch2" in
>   i386|x86_64|ppcemb|ppc|ppc64|s390x)
> diff --git a/hw/xen.h b/hw/xen.h
> index 43b95d6..2162111 100644
> --- a/hw/xen.h
> +++ b/hw/xen.h
> @@ -24,7 +24,7 @@ extern int xen_allowed;
>
>  static inline int xen_enabled(void)
>  {
> -#ifdef CONFIG_XEN_BACKEND
> +#if defined(CONFIG_XEN_BACKEND) && !defined(CONFIG_NO_XEN)
>     return xen_allowed;
>  #else
>     return 0;

Cool, better than my fix.

Acked-by: Anthony PERARD <address@hidden>

-- 
Anthony PERARD



reply via email to

[Prev in Thread] Current Thread [Next in Thread]