Description of problem: When creating a guest with 16384 virtio-scsi disks, libvirt fails with: Unable to encode message payload Version-Release number of selected component (if applicable): libvirt-daemon-3.2.0-1.fc27.x86_64 How reproducible: 100% Steps to Reproduce: 1. Create a guest with 16384 virtio-scsi disks. See the attached file for libvirt XML and so on.
Created attachment 1272310 [details] log from libvirt client
Created attachment 1272312 [details] log from libvirtd
As this bz is about payload size restriction in general, it applies to any retrieval! This for instance prohibits defining a static vm configuration with such large config e.g. for block devices (i.e . "virsh dumpxml $domain > $domain.xml;virsh config $domain.xml"), hence requiring to reattach them after the vm got destroyed which can take hours and thus delay related tests. Please mind that the maximum command line length of typically 2 MiB characters is also a limiting factor preventing qemu to start with scaled up VM configurations. Changed prority+severity to get this fixed.
Also, an unrelated virt-clone fails with the same error: # virt-clone -o fedora-36 -n fedora-36-hm --preserve-data -f /dev/rhel/fedora-36-hm ERROR Unable to encode message payload