mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-11-08 22:39:56 +00:00
88957116c9
So far, Libvirt configures memory-backend-* for memory hotplug, possibly NUMA nodes and in a few other cases. This patch switches to constructing the memory-backend-* command line for all cases. To keep ability to migrate guests a little hack is used: the ID of the object is set to the one that QEMU uses internally anyways. These IDs are stable (first started to appear somewhere around v0.13.0-rc0~96) and can't change. In fact, this patch does exactly what QEMU does internally. The reason for moving the logic into Libvirt is that QEMU wants to deprecate the old style of specifying memory. So far, only x84_64 test cases are changed, because tests for other architectures use older capabilities, which still lack the QEMU_CAPS_MACHINE_MEMORY_BACKEND capability and they don't report the RAM ID. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1836043 Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com>
64 lines
2.6 KiB
Plaintext
64 lines
2.6 KiB
Plaintext
LC_ALL=C \
|
|
PATH=/bin \
|
|
HOME=/tmp/lib/domain--1-guest \
|
|
USER=test \
|
|
LOGNAME=test \
|
|
XDG_DATA_HOME=/tmp/lib/domain--1-guest/.local/share \
|
|
XDG_CACHE_HOME=/tmp/lib/domain--1-guest/.cache \
|
|
XDG_CONFIG_HOME=/tmp/lib/domain--1-guest/.config \
|
|
QEMU_AUDIO_DRV=none \
|
|
/usr/bin/qemu-system-x86_64 \
|
|
-name guest=guest,debug-threads=on \
|
|
-S \
|
|
-object secret,id=masterKey0,format=raw,\
|
|
file=/tmp/lib/domain--1-guest/master-key.aes \
|
|
-machine q35,accel=tcg,usb=off,dump-guest-core=off,memory-backend=pc.ram \
|
|
-cpu qemu64 \
|
|
-m 4096 \
|
|
-object memory-backend-ram,id=pc.ram,size=4294967296 \
|
|
-overcommit mem-lock=off \
|
|
-smp 4,sockets=4,cores=1,threads=1 \
|
|
-uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \
|
|
-display none \
|
|
-no-user-config \
|
|
-nodefaults \
|
|
-chardev socket,id=charmonitor,fd=1729,server,nowait \
|
|
-mon chardev=charmonitor,id=monitor,mode=control \
|
|
-rtc base=utc,driftfix=slew \
|
|
-global kvm-pit.lost_tick_policy=delay \
|
|
-no-hpet \
|
|
-no-shutdown \
|
|
-global ICH9-LPC.disable_s3=1 \
|
|
-global ICH9-LPC.disable_s4=1 \
|
|
-boot strict=on \
|
|
-device pcie-root-port,port=0x8,chassis=1,id=pci.1,bus=pcie.0,multifunction=on,\
|
|
addr=0x1 \
|
|
-device pcie-root-port,port=0x9,chassis=2,id=pci.2,bus=pcie.0,addr=0x1.0x1 \
|
|
-device pcie-root-port,port=0xa,chassis=3,id=pci.3,bus=pcie.0,addr=0x1.0x2 \
|
|
-device pcie-root-port,port=0xb,chassis=4,id=pci.4,bus=pcie.0,addr=0x1.0x3 \
|
|
-device pcie-root-port,port=0xc,chassis=5,id=pci.5,bus=pcie.0,addr=0x1.0x4 \
|
|
-device pcie-root-port,port=0xd,chassis=6,id=pci.6,bus=pcie.0,addr=0x1.0x5 \
|
|
-device pcie-root-port,port=0xe,chassis=7,id=pci.7,bus=pcie.0,addr=0x1.0x6 \
|
|
-device qemu-xhci,p2=15,p3=15,id=usb,bus=pci.2,addr=0x0 \
|
|
-device virtio-serial-pci,id=virtio-serial0,bus=pci.3,addr=0x0 \
|
|
-blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/guest.qcow2",\
|
|
"node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \
|
|
-blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qcow2",\
|
|
"file":"libvirt-1-storage"}' \
|
|
-device virtio-blk-pci,bus=pci.4,addr=0x0,drive=libvirt-1-format,\
|
|
id=virtio-disk0,bootindex=1 \
|
|
-netdev user,id=hostnet0 \
|
|
-device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:09:a4:37,bus=pci.1,\
|
|
addr=0x0 \
|
|
-chardev pty,id=charserial0 \
|
|
-device isa-serial,chardev=charserial0,id=serial0 \
|
|
-chardev socket,id=charchannel0,fd=1729,server,nowait \
|
|
-device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,\
|
|
id=channel0,name=org.qemu.guest_agent.0 \
|
|
-device virtio-balloon-pci,id=balloon0,bus=pci.5,addr=0x0 \
|
|
-object rng-random,id=objrng0,filename=/dev/urandom \
|
|
-device virtio-rng-pci,rng=objrng0,id=rng0,bus=pci.6,addr=0x0 \
|
|
-sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,\
|
|
resourcecontrol=deny \
|
|
-msg timestamp=on
|