]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu_command: Generate virtio options for memory device
authorMichal Privoznik <mprivozn@redhat.com>
Mon, 27 Oct 2025 13:28:08 +0000 (14:28 +0100)
committerMichal Privoznik <mprivozn@redhat.com>
Wed, 29 Oct 2025 11:09:28 +0000 (12:09 +0100)
Thanks to previous refactors (namely v11.1.0-rc1~142) this is
trivial. There's all the infrastructure needed to generate virtio
options onto cmd line, all that's left to do is set a pointer to
appropriate struct member.

Resolves: https://issues.redhat.com/browse/RHEL-7493
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
src/qemu/qemu_command.c
tests/qemuxmlconfdata/virtio-options.x86_64-latest.args

index fcf5fc19350f54d36a60e65b60053213fcc57264..c538a9fb2fec38a25aef086634cf0de4d10c5034 100644 (file)
@@ -983,9 +983,11 @@ qemuBuildVirtioDevGetConfigDev(const virDomainDeviceDef *device,
             switch (device->data.memory->model) {
             case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_PMEM:
                 *baseName = "virtio-pmem";
+                *virtioOptions = device->data.memory->virtio;
                 break;
             case VIR_DOMAIN_MEMORY_MODEL_VIRTIO_MEM:
                 *baseName = "virtio-mem";
+                *virtioOptions = device->data.memory->virtio;
                 break;
             case VIR_DOMAIN_MEMORY_MODEL_DIMM:
             case VIR_DOMAIN_MEMORY_MODEL_NVDIMM:
index f2b9ee2afe74fc718659cd2b6c1bf76facae8673..0f65cefd577bb10e652e56812520c112847c0f84 100644 (file)
@@ -31,7 +31,7 @@ XDG_CONFIG_HOME=/var/lib/libvirt/qemu/domain--1-QEMUGuest1/.config \
 -device '{"driver":"virtio-scsi-pci","iommu_platform":true,"ats":true,"packed":true,"page-per-vq":true,"id":"scsi0","bus":"pci.0","addr":"0x8"}' \
 -device '{"driver":"virtio-serial-pci","iommu_platform":true,"ats":true,"packed":true,"page-per-vq":true,"id":"virtio-serial0","bus":"pci.0","addr":"0x9"}' \
 -object '{"qom-type":"memory-backend-file","id":"memvirtiomem0","mem-path":"/dev/hugepages2M/libvirt/qemu/-1-QEMUGuest1","reserve":false,"size":2147483648,"host-nodes":[1,2,3],"policy":"bind"}' \
--device '{"driver":"virtio-mem-pci","node":0,"block-size":2097152,"requested-size":1073741824,"memdev":"memvirtiomem0","prealloc":true,"memaddr":5637144576,"dynamic-memslots":true,"id":"virtiomem0","bus":"pci.0","addr":"0x5"}' \
+-device '{"driver":"virtio-mem-pci","iommu_platform":true,"ats":true,"packed":true,"page-per-vq":true,"node":0,"block-size":2097152,"requested-size":1073741824,"memdev":"memvirtiomem0","prealloc":true,"memaddr":5637144576,"dynamic-memslots":true,"id":"virtiomem0","bus":"pci.0","addr":"0x5"}' \
 -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/img1","node-name":"libvirt-1-storage","read-only":false}' \
 -device '{"driver":"virtio-blk-pci","iommu_platform":true,"ats":true,"packed":true,"page-per-vq":true,"bus":"pci.0","addr":"0xa","drive":"libvirt-1-storage","id":"virtio-disk0","bootindex":1}' \
 -fsdev local,security_model=passthrough,id=fsdev-fs0,path=/export/fs1 \