Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:42.3:Update
libvirt
948e429f-qemu-caps-arm-chardev.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 948e429f-qemu-caps-arm-chardev.patch of Package libvirt
commit 948e429f485056e08f9f33bb577ff610a998ce70 Author: Cole Robinson <crobinso@redhat.com> Date: Mon Jun 26 11:41:30 2017 -0400 qemu: caps: Tweak arm conditional in SupportsChardev Rather than try to whitelist all device configs that can't use -chardev, blacklist the only one that really can't, which is the default serial/console target type=isa case. ISA specifically isn't a valid config for arm/aarch64, but we've always implicitly treated it to mean 'default platform device'. Reviewed-by: Andrea Bolognani <abologna@redhat.com> Signed-off-by: Cole Robinson <crobinso@redhat.com> Index: libvirt-3.3.0/src/qemu/qemu_capabilities.c =================================================================== --- libvirt-3.3.0.orig/src/qemu/qemu_capabilities.c +++ libvirt-3.3.0/src/qemu/qemu_capabilities.c @@ -5499,15 +5499,16 @@ virQEMUCapsSupportsChardev(const virDoma return false; } - if ((def->os.arch != VIR_ARCH_ARMV7L) && (def->os.arch != VIR_ARCH_AARCH64)) - return true; + if (def->os.arch == VIR_ARCH_ARMV7L || def->os.arch == VIR_ARCH_AARCH64) { + /* TARGET_TYPE_ISA here really means 'the default', which we + treat as whatever the built in platform serial device is on. + And for platform devices we can't use -chardev */ + if (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_SERIAL && + chr->targetType == VIR_DOMAIN_CHR_SERIAL_TARGET_TYPE_ISA) + return false; + } - /* This may not be true for all ARM machine types, but at least - * the only supported non-virtio serial devices of vexpress and versatile - * don't have the -chardev property wired up. */ - return (chr->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_VIRTIO_MMIO || - (chr->deviceType == VIR_DOMAIN_CHR_DEVICE_TYPE_CONSOLE && - chr->targetType == VIR_DOMAIN_CHR_CONSOLE_TARGET_TYPE_VIRTIO)); + return true; }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor