virQEMUCapsSupportsChardev existing checks returns true for spapr-vty alone. Instead verify spapr-vty validity and let the logic to return true for other device types so that virtio-console passes. The non-pseries machines dont have spapr-vio-bus. So, the function always returned false for them before. Fixes - https://bugzilla.redhat.com/show_bug.cgi?id=1257813 Signed-off-by: Shivaprasad G Bhat <sbhat@xxxxxxxxxxxxxxxxxx> --- src/qemu/qemu_capabilities.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 6eee85d..784496b 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -4286,9 +4286,12 @@ virQEMUCapsSupportsChardev(const virDomainDef *def, return false; if ((def->os.arch == VIR_ARCH_PPC) || ARCH_IS_PPC64(def->os.arch)) { + if (!qemuDomainMachineIsPSeries(def)) + return false; /* only pseries need -device spapr-vty with -chardev */ - return (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL && - chr->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO); + if (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL && + chr->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO) + return false; } if ((def->os.arch != VIR_ARCH_ARMV7L) && (def->os.arch != VIR_ARCH_AARCH64)) -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list