libvirt/tests/qemustatusxml2xmldata/backup-pull-in.xml
Peter Krempa 278c630d2a qemu: domain: Store and update 'fdsetindex' across libvirtd restarts
While 'add-fd' qmp command gives the possibility to find an unused fdset
ID when hot-adding fdsets, such usage is extremely inconvenient.

This patch allows us to track the used fdset id so that we can avoid the
need to check results and thus employ simpler code flow when hot-adding
devices which use FD passing.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jonathon Jongsma <jjongsma@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2022-05-16 09:15:45 +02:00

623 lines
22 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'/>
<flag name='incremental-backup'/>
</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'/>
<fdset index='0'/>
<blockjobs active='yes'>
<blockjob name='backup-vda-libvirt-3-format' type='backup' state='running' jobflags='0x0'>
<disk dst='vda'/>
<bitmap name='bitmapname'/>
<store type='file' format='qcow2'>
<source file='/path/to/file' index='1337'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-1337-storage'/>
<nodename type='format' name='libvirt-1337-format'/>
</nodenames>
</privateData>
</source>
</store>
</blockjob>
</blockjobs>
<agentTimeout>-2</agentTimeout>
<backups>
<domainbackup mode='pull'>
<incremental>12345</incremental>
<server transport='tcp' tls='yes' name='localhost' port='10809'/>
<disks>
<disk name='vda' backup='yes' state='running' type='file' index='123'>
<scratch file='/path/to/file/'>
<privateData>
<nodenames>
<nodename type='storage' name='libvirt-1337-storage'/>
<nodename type='format' name='libvirt-1337-format'/>
</nodenames>
</privateData>
</scratch>
</disk>
</disks>
<privateData>
<objects>
<secret type='tlskey' alias='testalias-secret'/>
<TLSx509 alias='testalias-tlsx509'/>
</objects>
</privateData>
</domainbackup>
</backups>
<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/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='vda' 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>
<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>
<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>
<audio id='1' type='spice'/>
<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>