On 03/21/19 18:58, Peter Maydell wrote:
On Thu, 21 Mar 2019 at 17:35, Laszlo Ersek <lersek(a)redhat.com>
wrote:
> It simply keeps the status quo from before the patchset.
>
> The specific emulation targets that virtio-vga should not be enabled for
> (regardless of other targets / machine types) are arm/aarch64. IOW, in
> the longer term, it's not that virtio-vga is suitable only for PC ||
> DINO || PSERIES, but that it's *not* suitable for arm/aarch64.
Relying on the device not being present for aarch64 seems
fragile to me. It will break if we add a different
aarch64 machine other than "virt" and want that other
machine to have virtio-vga. It will also break if we
ever manage to get full heterogenous-CPU support and
end up with a single qemu-system binary that can emulate
both AArch64 virt and x86-64 pc machines :-)
If what you want is "don't use virtio-vga when using KVM
on aarch64" then why not have logic that implements that?
That's actually the logic that I implemented originally (or something very close to it
--
<
https://libvirt.org/git/?p=libvirt.git;a=commitdiff;h=706b5b627719e95a336...>),
but since then, this code has been modified in libvirt multiple times:
* [libvirt] [PATCH v2 00/17] cleanups and improvements for video device code
https://www.redhat.com/archives/libvir-list/2016-October/msg00533.html
https://libvirt.org/git/?p=libvirt.git;a=shortlog;hp=a62655f9c33a8f7c6257...
* [libvirt] [PATCH v3 0/6] Add support for video and input devices on S390
https://www.redhat.com/archives/libvir-list/2018-March/msg01519.html
https://libvirt.org/git/?p=libvirt.git;a=commitdiff;h=4bbf7f8cb5bf979ea2f...
I'm not implying that those patches must have introduced a libvirt regression, I just
agree that the code deserves investigation. This is why I added libvir-list to the CC list
when reporting the problem.
For 4.0 we should definitely just retain what we had
before the introduction of KConfig, but as a general
thing we should look to not have to have this odd
wrinkle.
(AFAIK virtio-vga is no different in this regard to the other
vga PCI devices, which also won't work in KVM setups.)
I agree -- please refer to the "domcapabilities" part (1) of my report:
https://lists.gnu.org/archive/html/qemu-devel/2019-03/msg06060.html
@@ -92,6 +92,8 @@
<video supported='yes'>
<enum name='modelType'>
<value>vga</value>
+ <value>cirrus</value>
+ <value>vmvga</value>
<value>virtio</value>
</enum>
</video>
"cirrus" and "vmvga" look wrong for aarch64.
Thanks
Laszlo