4372d3
From e52b12a986de8ac469b98135b2c1d2a8a63b9052 Mon Sep 17 00:00:00 2001
4372d3
Message-Id: <e52b12a986de8ac469b98135b2c1d2a8a63b9052@dist-git>
abb18f
From: Michal Privoznik <mprivozn@redhat.com>
abb18f
Date: Mon, 21 Mar 2022 17:10:15 +0100
abb18f
Subject: [PATCH] qemu_command: Generate prealloc-threads property
abb18f
abb18f
Let's generate prealloc-threads property onto the cmd line if
abb18f
domain configuration requests so.
abb18f
abb18f
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
abb18f
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
abb18f
(cherry picked from commit b8d6ecc70c8a8e9c90bab48b6829b42d8b77c748)
abb18f
abb18f
Conflicts:
abb18f
tests/qemuxml2argvdata/memfd-memory-numa.x86_64-latest.args:
abb18f
Upstream has moved some cmd line arguments
abb18f
(v8.0.0-260-gaf23241cfe) but that is not backported.
abb18f
4372d3
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2067126
abb18f
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
abb18f
---
abb18f
 src/qemu/qemu_command.c                                     | 5 ++++-
abb18f
 tests/qemuxml2argvdata/memfd-memory-numa.x86_64-latest.args | 4 ++--
abb18f
 2 files changed, 6 insertions(+), 3 deletions(-)
abb18f
abb18f
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
abb18f
index 2acdcca2ff..d23af97e0c 100644
abb18f
--- a/src/qemu/qemu_command.c
abb18f
+++ b/src/qemu/qemu_command.c
abb18f
@@ -3856,7 +3856,10 @@ qemuBuildMemoryBackendProps(virJSONValue **backendProps,
abb18f
             return -1;
abb18f
     } else {
abb18f
         if (!priv->memPrealloc &&
abb18f
-            virJSONValueObjectAdd(&props, "B:prealloc", prealloc, NULL) < 0)
abb18f
+            virJSONValueObjectAdd(&props,
abb18f
+                                  "B:prealloc", prealloc,
abb18f
+                                  "p:prealloc-threads", def->mem.allocation_threads,
abb18f
+                                  NULL) < 0)
abb18f
             return -1;
abb18f
     }
abb18f
 
abb18f
diff --git a/tests/qemuxml2argvdata/memfd-memory-numa.x86_64-latest.args b/tests/qemuxml2argvdata/memfd-memory-numa.x86_64-latest.args
abb18f
index 04a320d469..9b2e6086c3 100644
abb18f
--- a/tests/qemuxml2argvdata/memfd-memory-numa.x86_64-latest.args
abb18f
+++ b/tests/qemuxml2argvdata/memfd-memory-numa.x86_64-latest.args
abb18f
@@ -16,7 +16,7 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-instance-00000092/.config \
abb18f
 -m size=14680064k,slots=16,maxmem=1099511627776k \
abb18f
 -overcommit mem-lock=off \
abb18f
 -smp 8,sockets=1,dies=1,cores=8,threads=1 \
abb18f
--object '{"qom-type":"memory-backend-memfd","id":"ram-node0","hugetlb":true,"hugetlbsize":2097152,"share":true,"prealloc":true,"size":15032385536,"host-nodes":[3],"policy":"preferred"}' \
abb18f
+-object '{"qom-type":"memory-backend-memfd","id":"ram-node0","hugetlb":true,"hugetlbsize":2097152,"share":true,"prealloc":true,"prealloc-threads":8,"size":15032385536,"host-nodes":[3],"policy":"preferred"}' \
abb18f
 -numa node,nodeid=0,cpus=0-7,memdev=ram-node0 \
abb18f
 -uuid 126f2720-6f8e-45ab-a886-ec9277079a67 \
abb18f
 -display none \
abb18f
@@ -29,7 +29,7 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-instance-00000092/.config \
abb18f
 -no-acpi \
abb18f
 -boot strict=on \
abb18f
 -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \
abb18f
--object '{"qom-type":"memory-backend-file","id":"memnvdimm0","mem-path":"/tmp/nvdimm","share":true,"prealloc":true,"size":536870912,"host-nodes":[3],"policy":"preferred"}' \
abb18f
+-object '{"qom-type":"memory-backend-file","id":"memnvdimm0","mem-path":"/tmp/nvdimm","share":true,"prealloc":true,"prealloc-threads":8,"size":536870912,"host-nodes":[3],"policy":"preferred"}' \
abb18f
 -device nvdimm,node=0,memdev=memnvdimm0,id=nvdimm0,slot=0 \
abb18f
 -audiodev '{"id":"audio1","driver":"none"}' \
abb18f
 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x3 \
abb18f
-- 
abb18f
2.35.1
abb18f