From: Michal Privoznik <[email protected]>

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 <[email protected]>
---
 src/qemu/qemu_command.c                                 | 2 ++
 tests/qemuxmlconfdata/virtio-options.x86_64-latest.args | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index fcf5fc1935..c538a9fb2f 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -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:
diff --git a/tests/qemuxmlconfdata/virtio-options.x86_64-latest.args 
b/tests/qemuxmlconfdata/virtio-options.x86_64-latest.args
index f2b9ee2afe..0f65cefd57 100644
--- a/tests/qemuxmlconfdata/virtio-options.x86_64-latest.args
+++ b/tests/qemuxmlconfdata/virtio-options.x86_64-latest.args
@@ -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 \
-- 
2.51.0

Reply via email to