On 18/02/2025 11:20 am, Philippe Mathieu-Daudé wrote: > Hi, > > Adding Xen community. > > On 8/2/25 21:57, Richard Henderson wrote: >> Require a 64-bit host binary to spawn a 64-bit guest. >> >> Reviewed-by: Thomas Huth <th...@redhat.com> >> Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org> >> Signed-off-by: Richard Henderson <richard.hender...@linaro.org> >> --- >> meson.build | 9 +++++++-- >> 1 file changed, 7 insertions(+), 2 deletions(-) >> >> diff --git a/meson.build b/meson.build >> index 1af8aeb194..911955cfa8 100644 >> --- a/meson.build >> +++ b/meson.build >> @@ -304,9 +304,14 @@ else >> endif >> accelerator_targets = { 'CONFIG_KVM': kvm_targets } >> -if cpu in ['x86', 'x86_64'] >> +if cpu == 'x86' >> + xen_targets = ['i386-softmmu'] >> +elif cpu == 'x86_64' >> xen_targets = ['i386-softmmu', 'x86_64-softmmu'] >> -elif cpu in ['arm', 'aarch64'] >> +elif cpu == 'arm' >> + # i386 emulator provides xenpv machine type for multiple >> architectures >> + xen_targets = ['i386-softmmu'] > > Is actually someone *testing* this config? I'm having hard time building > it, so am very suspicious about how it runs, and start to wonder if I'm > not just wasting my time (as could be our CI).
It was intentional. I believe it was Stefano (CC'd) who introduced it. Xen uses qemu-system-i386 everywhere because qemu-system-x86_64 doesn't make compatible VMs. I'm not sure why; I suspect it's bugs in the Xen machine types, but I don't know QEMU well enough to be sure. Another thing that (at least, was) tied to qemu-system-i386 was using Qemu as a XenBlk <-> QCOW adapter, at which point it wasn't even really a system emulator, just a paravirtual disk implementation. This is, AIUI, what ARM wants with the xenpv machine. If there's a better way to do this, please do say. Looking through Xen's CI, I can't see any of the ARM builds building QEMU at all. I think it's quite possible it's not tested any more. ~Andrew