[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [XEN PATCH for-4.13] tools/configure: Honour XEN_COMPILE_ARCH and _TARGET_ for shim
Ian Jackson writes ("Re: [Xen-devel] [XEN PATCH for-4.13] tools/configure: Honour XEN_COMPILE_ARCH and _TARGET_ for shim"): > Andrew, did you want to ack this ? Or do you have further comments ? > I have a release-ack... Hrm. get_maintainer thinks this is for Wei. CC'd. Ian. > >From 1a8de36699b9042c30797e05f7a5f4313d7f7ad1 Mon Sep 17 00:00:00 2001 > From: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> > Date: Tue, 29 Oct 2019 17:45:30 +0000 > Subject: [PATCH] tools/configure: Honour XEN_COMPILE_ARCH and _TARGET_ for > shim > MIME-Version: 1.0 > Content-Type: text/plain; charset=UTF-8 > Content-Transfer-Encoding: 8bit > > The pvshim can only be built 64-bit because the hypervisor is only > 64-bit nowadays. The hypervisor build supports XEN_COMPILE_ARCH and > XEN_TARGET_ARCH which override the information from uname. The pvshim > build runs out of the tools/ directory but calls the hypervisor build > system. > > If one runs in a Linux 32-bit userland with a 64-bit kernel, one used > to be able to set XEN_COMPILE_ARCH. But nowadays this does not work. > configure sees the target cpu as 64-bit and tries to build pvshim. > The build prints > echo "*** Xen x86/32 target no longer supported!" > and doesn't build anything. Then the subsequent Makefiles try to > install the non-built pieces. > > Fix this anomaly by causing configure to honour the Xen hypervisor way > of setting the target architecture. > > In principle this user behaviour is not handled quite right, because > configure will still see 64-bit and so all the autoconf-based > architecture testing will see 64-bit rather than 32-bit x86. But the > tools are in fact generally quite portable: this particular location > in configure{.ac,} is the only place in tools/ where 64-bit x86 is > treated differently from 32-bit x86, so the fix is sufficient and > correct for this use case. > > It remains the case that XEN_COMPILE_ARCH or XEN_TARGET_ARCH to a > non-x86 architecture, when configure thinks things are x86, or vice > versa, will not work right. > > (This is a bugfix to 8845155c831c > pvshim: make PV shim build selectable from configure > which inadvertantly deleted the logic to only build the shim for > XEN_TARGET_ARCH != x86_32.) > > I have rerun autogen.sh, so this patch contains the fix to configure > as well as the source fix to configure.ac. > > Fixes: 8845155c831c59e867ee3dd31ee63e0cc6c7dcf2 > Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> > CC: Olaf Hering <olaf@xxxxxxxxx> > CC: Roger Pau Monné <roger.pau@xxxxxxxxxx> > Release-acked-by: Jürgen Groß <jgross@xxxxxxxx> > --- > tools/configure | 2 +- > tools/configure.ac | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/tools/configure b/tools/configure > index 82947ad308..d9ccce6d2b 100755 > --- a/tools/configure > +++ b/tools/configure > @@ -9711,7 +9711,7 @@ fi > else > > cpu=`test -z "$target_cpu" && echo "$host_cpu" || echo "$target_cpu"` > - case "$cpu" in > + case "${XEN_COMPILE_ARCH-${XEN_TARGET_ARCH-$cpu}}" in > x86_64) > pvshim="y";; > *) pvshim="n";; > diff --git a/tools/configure.ac b/tools/configure.ac > index 674bd5809d..a8d8ce5ffe 100644 > --- a/tools/configure.ac > +++ b/tools/configure.ac > @@ -479,7 +479,7 @@ AC_ARG_ENABLE([pvshim], > [Disable pvshim build (enabled by default on 64bit x86)]), > [AS_IF([test "x$enable_pvshim" = "xno"], [pvshim=n], [pvshim=y])], [ > cpu=`test -z "$target_cpu" && echo "$host_cpu" || echo "$target_cpu"` > - case "$cpu" in > + case "${XEN_COMPILE_ARCH-${XEN_TARGET_ARCH-$cpu}}" in > x86_64) > pvshim="y";; > *) pvshim="n";; > -- > 2.11.0 > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |