Message ID | 20200316160634.3386-19-philmd@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | None | expand |
On Mon, 16 Mar 2020, Philippe Mathieu-Daudé wrote: > Xen on ARM does not use QEMU machines [*]. Disable the 'virt' > machine there to avoid odd errors such: > > CC i386-softmmu/hw/cpu/a15mpcore.o > hw/cpu/a15mpcore.c:28:10: fatal error: kvm_arm.h: No such file or directory > > [*] https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions#Use_of_qemu-system-i386_on_ARM I confirm that what's written on that wikipage is correct: Xen on ARM doesn't use QEMU for emulation, only as a PV backends provider. As such, and also because the code is a bit entangled with the x86 platform, even on ARM we are building and running qemu-system-i386 to get the PV disk and PV framebuffer. Of course, no x86 emulation is actually done. Ideally we would have a non-arch-specific machine type for the PV backends, but that doesn't exist today. In short, I think this patch is fine, at least until somebody comes around and tries to add emulation to Xen on ARM. > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > Cc: Stefano Stabellini <sstabellini@kernel.org> > Cc: Anthony Perard <anthony.perard@citrix.com> > Cc: Paul Durrant <paul@xen.org> > Cc: xen-devel@lists.xenproject.org > --- > hw/arm/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig > index 8e801cd15f..69a8e30125 100644 > --- a/hw/arm/Kconfig > +++ b/hw/arm/Kconfig > @@ -1,5 +1,6 @@ > config ARM_VIRT > bool > + depends on !XEN > default y if KVM > imply PCI_DEVICES > imply TEST_DEVICES > -- > 2.21.1 >
On Mon, 16 Mar 2020 at 16:08, Philippe Mathieu-Daudé <philmd@redhat.com> wrote: > > Xen on ARM does not use QEMU machines [*]. Disable the 'virt' > machine there to avoid odd errors such: > > CC i386-softmmu/hw/cpu/a15mpcore.o > hw/cpu/a15mpcore.c:28:10: fatal error: kvm_arm.h: No such file or directory > > [*] https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions#Use_of_qemu-system-i386_on_ARM > > Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> > --- > Cc: Stefano Stabellini <sstabellini@kernel.org> > Cc: Anthony Perard <anthony.perard@citrix.com> > Cc: Paul Durrant <paul@xen.org> > Cc: xen-devel@lists.xenproject.org > --- > hw/arm/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig > index 8e801cd15f..69a8e30125 100644 > --- a/hw/arm/Kconfig > +++ b/hw/arm/Kconfig > @@ -1,5 +1,6 @@ > config ARM_VIRT > bool > + depends on !XEN > default y if KVM > imply PCI_DEVICES > imply TEST_DEVICES > -- This seems odd to me: (1) the error message you quote is for a15mpcore.c, not virt.c (2) shouldn't this be prevented by something saying "don't build guest architecture X boards into Y-softmmu", rather than a specific flag for a specific arm board ? thanks -- PMM
On 3/16/20 6:11 PM, Peter Maydell wrote: > On Mon, 16 Mar 2020 at 16:08, Philippe Mathieu-Daudé <philmd@redhat.com> wrote: >> >> Xen on ARM does not use QEMU machines [*]. Disable the 'virt' >> machine there to avoid odd errors such: >> >> CC i386-softmmu/hw/cpu/a15mpcore.o >> hw/cpu/a15mpcore.c:28:10: fatal error: kvm_arm.h: No such file or directory >> >> [*] https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions#Use_of_qemu-system-i386_on_ARM >> >> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> >> --- >> Cc: Stefano Stabellini <sstabellini@kernel.org> >> Cc: Anthony Perard <anthony.perard@citrix.com> >> Cc: Paul Durrant <paul@xen.org> >> Cc: xen-devel@lists.xenproject.org >> --- >> hw/arm/Kconfig | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig >> index 8e801cd15f..69a8e30125 100644 >> --- a/hw/arm/Kconfig >> +++ b/hw/arm/Kconfig >> @@ -1,5 +1,6 @@ >> config ARM_VIRT >> bool >> + depends on !XEN >> default y if KVM >> imply PCI_DEVICES >> imply TEST_DEVICES >> -- > > This seems odd to me: > (1) the error message you quote is for a15mpcore.c, not virt.c This is the first device the virt board selects: config ARM_VIRT bool imply PCI_DEVICES imply TEST_DEVICES imply VFIO_AMD_XGBE imply VFIO_PLATFORM imply VFIO_XGMAC imply TPM_TIS_SYSBUS select A15MPCORE ... > (2) shouldn't this be prevented by something saying "don't build > guest architecture X boards into Y-softmmu", rather than a specific > flag for a specific arm board ? Yes, agreed. This surgical change was quicker for my testing, but we don't need this patch right now, so let's drop it. > > thanks > -- PMM >
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig index 8e801cd15f..69a8e30125 100644 --- a/hw/arm/Kconfig +++ b/hw/arm/Kconfig @@ -1,5 +1,6 @@ config ARM_VIRT bool + depends on !XEN default y if KVM imply PCI_DEVICES imply TEST_DEVICES
Xen on ARM does not use QEMU machines [*]. Disable the 'virt' machine there to avoid odd errors such: CC i386-softmmu/hw/cpu/a15mpcore.o hw/cpu/a15mpcore.c:28:10: fatal error: kvm_arm.h: No such file or directory [*] https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions#Use_of_qemu-system-i386_on_ARM Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com> --- Cc: Stefano Stabellini <sstabellini@kernel.org> Cc: Anthony Perard <anthony.perard@citrix.com> Cc: Paul Durrant <paul@xen.org> Cc: xen-devel@lists.xenproject.org --- hw/arm/Kconfig | 1 + 1 file changed, 1 insertion(+)