libvirt/tests/qemustatusxml2xmldata/blockjob-blockdev-in.xml
Jonathon Jongsma 95f5ac9ae5 Add API to change qemu agent response timeout
Some layered products such as oVirt have requested a way to avoid being
blocked by guest agent commands when querying a loaded vm. For example,
many guest agent commands are polled periodically to monitor changes,
and rather than blocking the calling process, they'd prefer to simply
time out when an agent query is taking too long.

This patch adds a way for the user to specify a custom agent timeout
that is applied to all agent commands.

One special case to note here is the 'guest-sync' command. 'guest-sync'
is issued internally prior to calling any other command. (For example,
when libvirt wants to call 'guest-get-fsinfo', we first call
'guest-sync' and then call 'guest-get-fsinfo').

Previously, the 'guest-sync' command used a 5-second timeout
(VIR_DOMAIN_QEMU_AGENT_COMMAND_DEFAULT), whereas the actual command that
followed always blocked indefinitely
(VIR_DOMAIN_QEMU_AGENT_COMMAND_BLOCK). As part of this patch, if a
custom timeout is specified that is shorter than
5 seconds,  this new timeout is also used for 'guest-sync'. If there is
no custom timeout or if the custom timeout is longer than 5 seconds, we
will continue to use the 5-second timeout.

Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com>
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2019-11-14 19:10:01 +01:00

712 lines
26 KiB
XML

<domstatus state='running' reason='booted' pid='7690'>
<taint flag='high-privileges'/>
<monitor path='/var/lib/libvirt/qemu/domain-4-copy/monitor.sock' type='unix'/>
<namespaces>
<mount/>
</namespaces>
<vcpus>
<vcpu id='0' pid='7696'/>
</vcpus>
<qemuCaps>
<flag name='kvm'/>
<flag name='no-hpet'/>
<flag name='spice'/>
<flag name='hda-duplex'/>
<flag name='ccid-emulated'/>
<flag name='ccid-passthru'/>
<flag name='virtio-tx-alg'/>
<flag name='virtio-blk-pci.ioeventfd'/>
<flag name='sga'/>
<flag name='virtio-blk-pci.event_idx'/>
<flag name='virtio-net-pci.event_idx'/>
<flag name='piix3-usb-uhci'/>
<flag name='piix4-usb-uhci'/>
<flag name='usb-ehci'/>
<flag name='ich9-usb-ehci1'/>
<flag name='vt82c686b-usb-uhci'/>
<flag name='pci-ohci'/>
<flag name='usb-redir'/>
<flag name='usb-hub'/>
<flag name='ich9-ahci'/>
<flag name='no-acpi'/>
<flag name='virtio-blk-pci.scsi'/>
<flag name='scsi-disk.channel'/>
<flag name='scsi-block'/>
<flag name='transaction'/>
<flag name='block-job-async'/>
<flag name='scsi-cd'/>
<flag name='ide-cd'/>
<flag name='hda-micro'/>
<flag name='dump-guest-memory'/>
<flag name='nec-usb-xhci'/>
<flag name='balloon-event'/>
<flag name='lsi'/>
<flag name='virtio-scsi-pci'/>
<flag name='blockio'/>
<flag name='disable-s3'/>
<flag name='disable-s4'/>
<flag name='usb-redir.filter'/>
<flag name='ide-drive.wwn'/>
<flag name='scsi-disk.wwn'/>
<flag name='seccomp-sandbox'/>
<flag name='reboot-timeout'/>
<flag name='seamless-migration'/>
<flag name='block-commit'/>
<flag name='vnc'/>
<flag name='drive-mirror'/>
<flag name='blockdev-snapshot-sync'/>
<flag name='qxl'/>
<flag name='VGA'/>
<flag name='cirrus-vga'/>
<flag name='vmware-svga'/>
<flag name='device-video-primary'/>
<flag name='usb-serial'/>
<flag name='nbd-server'/>
<flag name='virtio-rng'/>
<flag name='rng-random'/>
<flag name='rng-egd'/>
<flag name='megasas'/>
<flag name='tpm-passthrough'/>
<flag name='tpm-tis'/>
<flag name='pci-bridge'/>
<flag name='vfio-pci'/>
<flag name='mem-merge'/>
<flag name='drive-discard'/>
<flag name='mlock'/>
<flag name='device-del-event'/>
<flag name='dmi-to-pci-bridge'/>
<flag name='i440fx-pci-hole64-size'/>
<flag name='q35-pci-hole64-size'/>
<flag name='usb-storage'/>
<flag name='usb-storage.removable'/>
<flag name='ich9-intel-hda'/>
<flag name='kvm-pit-lost-tick-policy'/>
<flag name='boot-strict'/>
<flag name='pvpanic'/>
<flag name='spice-file-xfer-disable'/>
<flag name='usb-kbd'/>
<flag name='msg-timestamp'/>
<flag name='active-commit'/>
<flag name='change-backing-file'/>
<flag name='memory-backend-ram'/>
<flag name='numa'/>
<flag name='memory-backend-file'/>
<flag name='usb-audio'/>
<flag name='rtc-reset-reinjection'/>
<flag name='splash-timeout'/>
<flag name='iothread'/>
<flag name='migrate-rdma'/>
<flag name='ivshmem'/>
<flag name='drive-iotune-max'/>
<flag name='VGA.vgamem_mb'/>
<flag name='vmware-svga.vgamem_mb'/>
<flag name='qxl.vgamem_mb'/>
<flag name='pc-dimm'/>
<flag name='machine-vmport-opt'/>
<flag name='aes-key-wrap'/>
<flag name='dea-key-wrap'/>
<flag name='pci-serial'/>
<flag name='vhost-user-multiqueue'/>
<flag name='migration-event'/>
<flag name='ioh3420'/>
<flag name='x3130-upstream'/>
<flag name='xio3130-downstream'/>
<flag name='rtl8139'/>
<flag name='e1000'/>
<flag name='virtio-net'/>
<flag name='gic-version'/>
<flag name='incoming-defer'/>
<flag name='virtio-gpu'/>
<flag name='virtio-gpu.virgl'/>
<flag name='virtio-keyboard'/>
<flag name='virtio-mouse'/>
<flag name='virtio-tablet'/>
<flag name='virtio-input-host'/>
<flag name='chardev-file-append'/>
<flag name='ich9-disable-s3'/>
<flag name='ich9-disable-s4'/>
<flag name='vserport-change-event'/>
<flag name='virtio-balloon-pci.deflate-on-oom'/>
<flag name='mptsas1068'/>
<flag name='spice-gl'/>
<flag name='qxl.vram64_size_mb'/>
<flag name='chardev-logfile'/>
<flag name='debug-threads'/>
<flag name='secret'/>
<flag name='pxb'/>
<flag name='pxb-pcie'/>
<flag name='device-tray-moved-event'/>
<flag name='nec-usb-xhci-ports'/>
<flag name='virtio-scsi-pci.iothread'/>
<flag name='name-guest'/>
<flag name='qxl.max_outputs'/>
<flag name='spice-unix'/>
<flag name='drive-detect-zeroes'/>
<flag name='tls-creds-x509'/>
<flag name='intel-iommu'/>
<flag name='smm'/>
<flag name='virtio-pci-disable-legacy'/>
<flag name='query-hotpluggable-cpus'/>
<flag name='virtio-net.rx_queue_size'/>
<flag name='virtio-vga'/>
<flag name='drive-iotune-max-length'/>
<flag name='ivshmem-plain'/>
<flag name='ivshmem-doorbell'/>
<flag name='query-qmp-schema'/>
<flag name='gluster.debug_level'/>
<flag name='vhost-scsi'/>
<flag name='drive-iotune-group'/>
<flag name='query-cpu-model-expansion'/>
<flag name='virtio-net.host_mtu'/>
<flag name='spice-rendernode'/>
<flag name='nvdimm'/>
<flag name='pcie-root-port'/>
<flag name='query-cpu-definitions'/>
<flag name='block-write-threshold'/>
<flag name='query-named-block-nodes'/>
<flag name='cpu-cache'/>
<flag name='qemu-xhci'/>
<flag name='kernel-irqchip'/>
<flag name='kernel-irqchip.split'/>
<flag name='intel-iommu.intremap'/>
<flag name='intel-iommu.caching-mode'/>
<flag name='intel-iommu.eim'/>
<flag name='intel-iommu.device-iotlb'/>
<flag name='virtio.iommu_platform'/>
<flag name='virtio.ats'/>
<flag name='loadparm'/>
<flag name='vnc-multi-servers'/>
<flag name='virtio-net.tx_queue_size'/>
<flag name='chardev-reconnect'/>
<flag name='virtio-gpu.max_outputs'/>
<flag name='vxhs'/>
<flag name='virtio-blk.num-queues'/>
<flag name='vmcoreinfo'/>
<flag name='numa.dist'/>
<flag name='disk-share-rw'/>
<flag name='iscsi.password-secret'/>
<flag name='isa-serial'/>
<flag name='dump-completed'/>
<flag name='qcow2-luks'/>
<flag name='pcie-pci-bridge'/>
<flag name='seccomp-blacklist'/>
<flag name='query-cpus-fast'/>
<flag name='disk-write-cache'/>
<flag name='nbd-tls'/>
<flag name='tpm-crb'/>
<flag name='pr-manager-helper'/>
<flag name='qom-list-properties'/>
<flag name='memory-backend-file.discard-data'/>
<flag name='sdl-gl'/>
<flag name='screendump_device'/>
<flag name='hda-output'/>
<flag name='blockdev-del'/>
<flag name='vmgenid'/>
<flag name='vhost-vsock'/>
<flag name='chardev-fd-pass'/>
<flag name='tpm-emulator'/>
<flag name='mch'/>
<flag name='mch.extended-tseg-mbytes'/>
<flag name='usb-storage.werror'/>
<flag name='egl-headless'/>
<flag name='vfio-pci.display'/>
<flag name='blockdev'/>
<flag name='memory-backend-memfd'/>
<flag name='memory-backend-memfd.hugetlb'/>
<flag name='iothread.poll-max-ns'/>
<flag name='egl-headless.rendernode'/>
</qemuCaps>
<devices>
<device alias='rng0'/>
<device alias='sound0-codec0'/>
<device alias='virtio-disk0'/>
<device alias='virtio-serial0'/>
<device alias='video0'/>
<device alias='serial0'/>
<device alias='sound0'/>
<device alias='channel1'/>
<device alias='channel0'/>
<device alias='usb'/>
</devices>
<libDir path='/var/lib/libvirt/qemu/domain-4-copy'/>
<channelTargetDir path='/var/lib/libvirt/qemu/channel/target/domain-4-copy'/>
<chardevStdioLogd/>
<allowReboot value='yes'/>
<nodename index='0'/>
<blockjobs active='yes'>
<blockjob name='pull-vdb-libvirt-3-format' type='pull' state='running'>
<disk dst='vdb'/>
<base node='libvirt-14-format'/>
</blockjob>
<blockjob name='commit-vde-libvirt-17-format' type='active-commit' state='ready'>
<disk dst='vde'/>
<base node='libvirt-19-format'/>
<top node='libvirt-17-format'/>
</blockjob>
<blockjob name='create-libvirt-1337-storage' type='create' state='running'>
<create mode='storage'/>
<src type='network' format='qcow2'>
<source protocol='rbd' name='pool/volname.qcow2' tlsFromConfig='0' index='1337'>
<host name='example.org'/>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-1337-storage'/>
<nodename type='format' name='libvirt-1337-format'/>
</nodenames>
<objects>
<secret type='auth' alias='libvirt-1337-storage-secret0'/>
</objects>
</privateData>
</source>
</src>
</blockjob>
<blockjob name='copy-vdd-libvirt-4321-format' type='copy' state='ready' shallownew='yes'>
<disk dst='vdd'/>
</blockjob>
<blockjob name='commit-vdc-libvirt-9-format' type='commit' state='running'>
<disk dst='vdc'/>
<base node='libvirt-11-format'/>
<top node='libvirt-9-format'/>
<topparent node='libvirt-2-format'/>
</blockjob>
<blockjob name='drive-virtio-disk0' type='copy' state='ready'>
<disk dst='vda' mirror='yes'/>
</blockjob>
<blockjob name='create-libvirt-1338-format' type='create' state='running'>
<chains>
<disk type='file' format='qcow2'>
<source file='/create/src1.qcow2' index='1339'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-1339-storage'/>
<nodename type='format' name='libvirt-1339-format'/>
</nodenames>
</privateData>
</source>
<backingStore/>
</disk>
</chains>
<src type='file' format='qcow2'>
<source file='/tmp/create/overlay.qcow2' index='1338'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-1338-storage'/>
<nodename type='format' name='libvirt-1338-format'/>
</nodenames>
<objects>
<secret type='encryption' alias='libvirt-1338-storage-secret0'/>
</objects>
</privateData>
</source>
</src>
</blockjob>
<blockjob name='test-orphan-job0' type='copy' state='ready'>
<chains>
<disk type='file' format='qcow2'>
<source file='/orphan/source/top.qcow2' index='123'>
<privateData>
<nodenames>
<nodename type='storage' name='orphan-source-top-storage'/>
<nodename type='format' name='orphan-source-top-format'/>
</nodenames>
</privateData>
</source>
<backingStore type='file' index='321'>
<format type='qcow2'/>
<source file='/orphan/source/base.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='orphan-source-base-storage'/>
<nodename type='format' name='orphan-source-base-format'/>
</nodenames>
</privateData>
</source>
<backingStore/>
</backingStore>
</disk>
<mirror type='file' format='raw'>
<source file='/orphan/mirror/raw' index='42'>
<privateData>
<nodenames>
<nodename type='storage' name='orphan-mirror-raw-storage'/>
<nodename type='format' name='orphan-mirror-raw-format'/>
</nodenames>
</privateData>
</source>
<backingStore/>
</mirror>
</chains>
</blockjob>
</blockjobs>
<agentTimeout>-2</agentTimeout>
<domain type='kvm' id='4'>
<name>copy</name>
<uuid>0439a4a8-db56-4933-9183-d8681d7b0746</uuid>
<memory unit='KiB'>1024000</memory>
<currentMemory unit='KiB'>1024000</currentMemory>
<vcpu placement='static'>1</vcpu>
<resource>
<partition>/machine</partition>
</resource>
<os>
<type arch='x86_64' machine='pc-i440fx-2.9'>hvm</type>
<boot dev='hd'/>
<bootmenu enable='yes'/>
</os>
<features>
<acpi/>
<apic/>
<vmport state='off'/>
</features>
<clock offset='utc'>
<timer name='rtc' tickpolicy='catchup'/>
<timer name='pit' tickpolicy='delay'/>
<timer name='hpet' present='no'/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<pm>
<suspend-to-mem enabled='no'/>
<suspend-to-disk enabled='no'/>
</pm>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/tmp/src'/>
<backingStore/>
<mirror type='file' file='/tmp/copy' format='qcow2' job='copy' ready='yes'>
<format type='qcow2'/>
<source file='/tmp/copy'/>
</mirror>
<target dev='vda' bus='virtio'/>
<alias name='virtio-disk0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/>
</disk>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/tmp/pull4.qcow2' index='3'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-3-storage'/>
<nodename type='format' name='libvirt-3-format'/>
</nodenames>
</privateData>
</source>
<backingStore type='file' index='13'>
<format type='qcow2'/>
<source file='/tmp/pull3.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-13-storage'/>
<nodename type='format' name='libvirt-13-format'/>
</nodenames>
<relPath>pull3.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='14'>
<format type='qcow2'/>
<source file='/tmp/pull2.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-14-storage'/>
<nodename type='format' name='libvirt-14-format'/>
</nodenames>
<relPath>pull2.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='15'>
<format type='qcow2'/>
<source file='/tmp/pull1.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-15-storage'/>
<nodename type='format' name='libvirt-15-format'/>
</nodenames>
<relPath>pull1.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='16'>
<format type='qcow2'/>
<source file='/tmp/pull0.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-16-storage'/>
<nodename type='format' name='libvirt-16-format'/>
</nodenames>
<relPath>pull0.qcow2</relPath>
</privateData>
</source>
<backingStore/>
</backingStore>
</backingStore>
</backingStore>
</backingStore>
<target dev='vdb' bus='virtio'/>
<alias name='virtio-disk1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x0b' function='0x0'/>
<privateData>
<qom name='/machine/peripheral/virtio-disk1/virtio-backend'/>
</privateData>
</disk>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/tmp/commit4.qcow2' index='2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-2-storage'/>
<nodename type='format' name='libvirt-2-format'/>
</nodenames>
</privateData>
</source>
<backingStore type='file' index='9'>
<format type='qcow2'/>
<source file='/tmp/commit3.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-9-storage'/>
<nodename type='format' name='libvirt-9-format'/>
</nodenames>
<relPath>commit3.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='10'>
<format type='qcow2'/>
<source file='/tmp/commit2.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-10-storage'/>
<nodename type='format' name='libvirt-10-format'/>
</nodenames>
<relPath>commit2.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='11'>
<format type='qcow2'/>
<source file='/tmp/commit1.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-11-storage'/>
<nodename type='format' name='libvirt-11-format'/>
</nodenames>
<relPath>commit1.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='12'>
<format type='qcow2'/>
<source file='/tmp/commit0.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-12-storage'/>
<nodename type='format' name='libvirt-12-format'/>
</nodenames>
<relPath>commit0.qcow2</relPath>
</privateData>
</source>
<backingStore/>
</backingStore>
</backingStore>
</backingStore>
</backingStore>
<target dev='vdc' bus='virtio'/>
<alias name='virtio-disk2'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x0c' function='0x0'/>
<privateData>
<qom name='/machine/peripheral/virtio-disk2/virtio-backend'/>
</privateData>
</disk>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/tmp/copy4.qcow2' index='1'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-1-storage'/>
<nodename type='format' name='libvirt-1-format'/>
</nodenames>
</privateData>
</source>
<backingStore type='file' index='5'>
<format type='qcow2'/>
<source file='/tmp/copy3.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-5-storage'/>
<nodename type='format' name='libvirt-5-format'/>
</nodenames>
<relPath>copy3.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='6'>
<format type='qcow2'/>
<source file='/tmp/copy2.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-6-storage'/>
<nodename type='format' name='libvirt-6-format'/>
</nodenames>
<relPath>copy2.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='7'>
<format type='qcow2'/>
<source file='/tmp/copy1.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-7-storage'/>
<nodename type='format' name='libvirt-7-format'/>
</nodenames>
<relPath>copy1.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='8'>
<format type='qcow2'/>
<source file='/tmp/copy0.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-8-storage'/>
<nodename type='format' name='libvirt-8-format'/>
</nodenames>
<relPath>copy0.qcow2</relPath>
</privateData>
</source>
<backingStore/>
</backingStore>
</backingStore>
</backingStore>
</backingStore>
<mirror type='file' file='/tmp/copy2' format='qcow2' job='copy' ready='yes'>
<format type='qcow2'/>
<source file='/tmp/copy2' index='4321'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-4321-storage'/>
<nodename type='format' name='libvirt-4321-format'/>
</nodenames>
</privateData>
</source>
</mirror>
<target dev='vdd' bus='virtio'/>
<alias name='virtio-disk3'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x0d' function='0x0'/>
<privateData>
<qom name='/machine/peripheral/virtio-disk3/virtio-backend'/>
</privateData>
</disk>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/tmp/activecommit4.qcow2' index='17'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-17-storage'/>
<nodename type='format' name='libvirt-17-format'/>
</nodenames>
</privateData>
</source>
<backingStore type='file' index='18'>
<format type='qcow2'/>
<source file='/tmp/activecommit3.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-18-storage'/>
<nodename type='format' name='libvirt-18-format'/>
</nodenames>
<relPath>activecommit3.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='19'>
<format type='qcow2'/>
<source file='/tmp/activecommit2.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-19-storage'/>
<nodename type='format' name='libvirt-19-format'/>
</nodenames>
<relPath>activecommit2.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='20'>
<format type='qcow2'/>
<source file='/tmp/activecommit1.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-20-storage'/>
<nodename type='format' name='libvirt-20-format'/>
</nodenames>
<relPath>activecommit1.qcow2</relPath>
</privateData>
</source>
<backingStore type='file' index='21'>
<format type='qcow2'/>
<source file='/tmp/activecommit0.qcow2'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-21-storage'/>
<nodename type='format' name='libvirt-21-format'/>
</nodenames>
<relPath>activecommit0.qcow2</relPath>
</privateData>
</source>
<backingStore/>
</backingStore>
</backingStore>
</backingStore>
</backingStore>
<mirror type='file' job='active-commit' ready='yes'>
<format type='qcow2'/>
<source file='/tmp/activecommit2.qcow2'/>
</mirror>
<target dev='vde' bus='virtio'/>
<alias name='virtio-disk3'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x0e' function='0x0'/>
<privateData>
<qom name='/machine/peripheral/virtio-disk3/virtio-backend'/>
</privateData>
</disk>
<controller type='usb' index='0' model='piix3-uhci'>
<alias name='usb'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
</controller>
<controller type='pci' index='0' model='pci-root'>
<alias name='pci.0'/>
</controller>
<serial type='pty'>
<source path='/dev/pts/34'/>
<target type='isa-serial' port='0'>
<model name='isa-serial'/>
</target>
<alias name='serial0'/>
</serial>
<console type='pty' tty='/dev/pts/34'>
<source path='/dev/pts/34'/>
<target type='serial' port='0'/>
<alias name='serial0'/>
</console>
<input type='mouse' bus='ps2'>
<alias name='input0'/>
</input>
<input type='keyboard' bus='ps2'>
<alias name='input1'/>
</input>
<graphics type='spice' port='5900' autoport='yes' listen='127.0.0.1'>
<listen type='address' address='127.0.0.1' fromConfig='1' autoGenerated='no'/>
<image compression='off'/>
</graphics>
<video>
<model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>
<alias name='video0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
</video>
<memballoon model='none'/>
</devices>
<seclabel type='dynamic' model='selinux' relabel='yes'>
<label>unconfined_u:unconfined_r:svirt_t:s0:c550,c786</label>
<imagelabel>unconfined_u:object_r:svirt_image_t:s0:c550,c786</imagelabel>
</seclabel>
<seclabel type='dynamic' model='dac' relabel='yes'>
<label>+0:+0</label>
<imagelabel>+0:+0</imagelabel>
</seclabel>
</domain>
</domstatus>