On Tue, 28 Jul 2020 at 10:19, Paul Durrant <p...@xen.org> wrote: > > From: Paul Durrant <pdurr...@amazon.com> > > The recent commit da278d58a092 "accel: Move Xen accelerator code under > accel/xen/" introduced a subtle semantic change, making xen_enabled() always > return false unless CONFIG_XEN is defined prior to inclusion of sysemu/xen.h, > which appears to be the normal case. This causes various use-cases of QEMU > with Xen to break. > > This patch makes sure that CONFIG_XEN is defined if --enable-xen is passed > to configure. > > Fixes: da278d58a092 ("accel: Move Xen accelerator code under accel/xen/") > Signed-off-by: Paul Durrant <pdurr...@amazon.com> > --- > Cc: "Philippe Mathieu-Daudé" <phi...@redhat.com> > Cc: Laurent Vivier <laur...@vivier.eu> > Cc: Stefano Stabellini <sstabell...@kernel.org> > Cc: Anthony Perard <anthony.per...@citrix.com> > --- > configure | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/configure b/configure > index 2acc4d1465..f1b9d129fd 100755 > --- a/configure > +++ b/configure > @@ -7434,6 +7434,7 @@ if test "$virglrenderer" = "yes" ; then > echo "VIRGL_LIBS=$virgl_libs" >> $config_host_mak > fi > if test "$xen" = "yes" ; then > + echo "CONFIG_XEN=y" >> $config_host_mak > echo "CONFIG_XEN_BACKEND=y" >> $config_host_mak > echo "CONFIG_XEN_CTRL_INTERFACE_VERSION=$xen_ctrl_version" >> > $config_host_mak > fi
Configure already defines CONFIG_XEN as a target-specific config define in config-target.mak for the specific targets that Xen will work for (ie if you build --enable-xen for x86_64-softmmu and ppc64-softmmu then CONFIG_XEN is set for the former and not the latter). This patch makes it a build-wide config setting by putting it in config-host.mak. We should figure out which of those two is correct and do just one of them, not do both at the same time. Since CONFIG_HAX, CONFIG_KVM and other accelerator-type config defines are also per-target, I suspect that the correct fix for this bug is not in configure but elsewhere. thanks -- PMM