domain_conf: Do not use USB by default for <input> devices on s390x

When trying to specify an input device on s390x without bus like this:

 <input type='keyboard'/>

... then libvirt currently complains:

 error: unsupported configuration: USB is disabled for this domain,
 but USB devices are present in the domain XML

This is somewhat confusing since the user did not specify an USB
device here. Since USB is not available on s390x, we should default
to the "virtio" bus here instead.

Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=1790189
Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Thomas Huth 2020-01-13 09:30:14 +01:00 committed by Michal Privoznik
parent 3f2d167d9c
commit 177fbcdfaa

View File

@ -13428,6 +13428,8 @@ virDomainInputDefParseXML(virDomainXMLOptionPtr xmlopt,
def->type == VIR_DOMAIN_INPUT_TYPE_KBD) &&
(ARCH_IS_X86(dom->os.arch) || dom->os.arch == VIR_ARCH_NONE)) {
def->bus = VIR_DOMAIN_INPUT_BUS_PS2;
} else if (ARCH_IS_S390(dom->os.arch)) {
def->bus = VIR_DOMAIN_INPUT_BUS_VIRTIO;
} else {
def->bus = VIR_DOMAIN_INPUT_BUS_USB;
}