mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-27 16:15:23 +00:00
2c4affd57e
https://bugzilla.redhat.com/show_bug.cgi?id=1480668 QEMU has this new feature memory-backend-file.discard-data=yes which is a nifty optimization. Basically, when qemu is quitting or on memory hotplug it calls munmap() and close() on the file that is backing the memory. However, this does not mean kernel won't stop touching that part of memory. It still might. With this feature enabled we tell kernel: "we don't need this memory nor data stored in it". This makes kernel drop the memory immediately without trying to sync memory with the mapped file. Unfortunately, this cannot be turned on by default because we can't be sure when users really don't care about what happens to data after qemu dies. So it has to be opt-in. As usual, there are three places where one can configure memory attributes. This patch adds the feature to all of them. Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
40 lines
1.3 KiB
Plaintext
40 lines
1.3 KiB
Plaintext
LC_ALL=C \
|
|
PATH=/bin \
|
|
HOME=/home/test \
|
|
USER=test \
|
|
LOGNAME=test \
|
|
QEMU_AUDIO_DRV=none \
|
|
/usr/bin/qemu-system-x86_64 \
|
|
-name fedora \
|
|
-S \
|
|
-machine pc-i440fx-2.3,accel=tcg,usb=off,dump-guest-core=off \
|
|
-m size=1048576k,slots=16,maxmem=1099511627776k \
|
|
-smp 2,sockets=2,cores=1,threads=1 \
|
|
-mem-prealloc \
|
|
-mem-path /dev/hugepages2M/libvirt/qemu/-1-fedora \
|
|
-numa node,nodeid=0,cpus=0-1,mem=1024 \
|
|
-object memory-backend-file,id=memdimm0,prealloc=yes,\
|
|
mem-path=/dev/hugepages1G/libvirt/qemu/-1-fedora,size=1073741824,\
|
|
host-nodes=1-3,policy=bind \
|
|
-device pc-dimm,node=0,memdev=memdimm0,id=dimm0,slot=0 \
|
|
-object memory-backend-file,id=memdimm1,prealloc=yes,\
|
|
mem-path=/dev/hugepages2M/libvirt/qemu/-1-fedora,discard-data=yes,share=no,\
|
|
size=536870912 \
|
|
-device pc-dimm,node=0,memdev=memdimm1,id=dimm1,slot=1 \
|
|
-uuid 63840878-0deb-4095-97e6-fc444d9bc9fa \
|
|
-display none \
|
|
-no-user-config \
|
|
-nodefaults \
|
|
-chardev socket,id=charmonitor,path=/tmp/lib/domain--1-fedora/monitor.sock,\
|
|
server,nowait \
|
|
-mon chardev=charmonitor,id=monitor,mode=control \
|
|
-rtc base=utc \
|
|
-no-shutdown \
|
|
-boot c \
|
|
-usb \
|
|
-drive file=/var/lib/libvirt/images/fedora.qcow2,format=qcow2,if=none,\
|
|
id=drive-virtio-disk0 \
|
|
-device virtio-blk-pci,bus=pci.0,addr=0x7,drive=drive-virtio-disk0,\
|
|
id=virtio-disk0 \
|
|
-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3
|