|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] Re: [Qemu-devel] [PATCH 3/3] xen: make xen_enabled even more
On Sun, Jul 17, 2011 at 06:39, Alexander Graf <agraf@xxxxxxx> 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 <agraf@xxxxxxx>
> ---
> 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 <anthony.perard@xxxxxxxxxx>
--
Anthony PERARD
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|