提交 34a59fb5 编写于 作者: M Michal Privoznik

qemu: Drop two layers of nesting of memoryBackingDir

Initially introduced in v3.10.0-rc1~172.

When generating a path for memory-backend-file or -mem-path, qemu
driver will use the following pattern:

  $memoryBackingDir/libvirt/qemu/$id-$shortName

where $memoryBackingDir defaults to /var/lib/libvirt/qemu/ram but
can be overridden in qemu.conf. Anyway, the "/libvirt/qemu/" part
looks redundant, because it's already contained in the default,
or creates unnecessary nesting if overridden in qemu.conf.
Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
Reviewed-by: NAndrea Bolognani <abologna@redhat.com>
上级 0e4ec869
......@@ -970,7 +970,18 @@ static int
virQEMUDriverConfigLoadMemoryEntry(virQEMUDriverConfigPtr cfg,
virConfPtr conf)
{
return virConfGetValueString(conf, "memory_backing_dir", &cfg->memoryBackingDir);
char *dir = NULL;
int rc;
if ((rc = virConfGetValueString(conf, "memory_backing_dir", &dir)) < 0) {
return -1;
} else if (rc > 0) {
VIR_FREE(cfg->memoryBackingDir);
cfg->memoryBackingDir = g_strdup_printf("%s/libvirt/qemu", dir);
return 1;
}
return 0;
}
......@@ -1945,27 +1956,17 @@ qemuGetDomainHupageMemPath(const virDomainDef *def,
}
void
qemuGetMemoryBackingBasePath(virQEMUDriverConfigPtr cfg,
char **path)
{
*path = g_strdup_printf("%s/libvirt/qemu", cfg->memoryBackingDir);
}
int
qemuGetMemoryBackingDomainPath(const virDomainDef *def,
virQEMUDriverConfigPtr cfg,
char **path)
{
g_autofree char *shortName = NULL;
g_autofree char *base = NULL;
if (!(shortName = virDomainDefGetShortName(def)))
return -1;
qemuGetMemoryBackingBasePath(cfg, &base);
*path = g_strdup_printf("%s/%s", base, shortName);
*path = g_strdup_printf("%s/%s", cfg->memoryBackingDir, shortName);
return 0;
}
......
......@@ -397,8 +397,6 @@ int qemuGetDomainHupageMemPath(const virDomainDef *def,
unsigned long long pagesize,
char **memPath);
void qemuGetMemoryBackingBasePath(virQEMUDriverConfigPtr cfg,
char **path);
int qemuGetMemoryBackingDomainPath(const virDomainDef *def,
virQEMUDriverConfigPtr cfg,
char **path);
......
......@@ -635,7 +635,6 @@ qemuStateInitialize(bool privileged,
virQEMUDriverConfigPtr cfg;
uid_t run_uid = -1;
gid_t run_gid = -1;
g_autofree char *memoryBackingPath = NULL;
bool autostart = true;
size_t i;
const char *defsecmodel = NULL;
......@@ -930,17 +929,8 @@ qemuStateInitialize(bool privileged,
goto error;
}
qemuGetMemoryBackingBasePath(cfg, &memoryBackingPath);
if (virFileMakePath(memoryBackingPath) < 0) {
virReportSystemError(errno,
_("unable to create memory backing path %s"),
memoryBackingPath);
goto error;
}
if (privileged &&
virFileUpdatePerm(memoryBackingPath,
virFileUpdatePerm(cfg->memoryBackingDir,
0, S_IXGRP | S_IXOTH) < 0)
goto error;
......
......@@ -15,12 +15,12 @@ QEMU_AUDIO_DRV=none \
-realtime mlock=off \
-smp 16,sockets=2,cores=4,threads=2 \
-object memory-backend-file,id=ram-node0,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-QEMUGuest1/ram-node0,\
share=yes,size=112197632 \
mem-path=/var/lib/libvirt/qemu/ram/-1-QEMUGuest1/ram-node0,share=yes,\
size=112197632 \
-numa node,nodeid=0,cpus=0-7,memdev=ram-node0 \
-object memory-backend-file,id=ram-node1,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-QEMUGuest1/ram-node1,\
share=no,size=112197632 \
mem-path=/var/lib/libvirt/qemu/ram/-1-QEMUGuest1/ram-node1,share=no,\
size=112197632 \
-numa node,nodeid=1,cpus=8-15,memdev=ram-node1 \
-uuid c7a5fdbd-edaf-9455-926a-d65c16db1809 \
-display none \
......
......@@ -13,7 +13,7 @@ QEMU_AUDIO_DRV=none \
-machine pc-i440fx-2.3,accel=kvm,usb=off,dump-guest-core=off \
-m 14336 \
-mem-prealloc \
-mem-path /var/lib/libvirt/qemu/ram/libvirt/qemu/-1-instance-00000092/ram \
-mem-path /var/lib/libvirt/qemu/ram/-1-instance-00000092/ram \
-realtime mlock=off \
-smp 8,sockets=8,cores=1,threads=1 \
-uuid 126f2720-6f8e-45ab-a886-ec9277079a67 \
......
......@@ -16,8 +16,8 @@ QEMU_AUDIO_DRV=none \
-realtime mlock=off \
-smp 8,sockets=1,cores=8,threads=1 \
-object memory-backend-file,id=ram-node0,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-instance-00000092/ram-node0,\
share=yes,size=15032385536 \
mem-path=/var/lib/libvirt/qemu/ram/-1-instance-00000092/ram-node0,share=yes,\
size=15032385536 \
-numa node,nodeid=0,cpus=0-7,memdev=ram-node0 \
-uuid 126f2720-6f8e-45ab-a886-ec9277079a67 \
-display none \
......
......@@ -16,12 +16,12 @@ QEMU_AUDIO_DRV=none \
-realtime mlock=off \
-smp 20,sockets=1,cores=8,threads=1 \
-object memory-backend-file,id=ram-node0,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-instance-00000092/ram-node0,\
share=no,size=15032385536 \
mem-path=/var/lib/libvirt/qemu/ram/-1-instance-00000092/ram-node0,share=no,\
size=15032385536 \
-numa node,nodeid=0,cpus=0-7,memdev=ram-node0 \
-object memory-backend-file,id=ram-node1,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-instance-00000092/ram-node1,\
share=yes,size=15032385536 \
mem-path=/var/lib/libvirt/qemu/ram/-1-instance-00000092/ram-node1,share=yes,\
size=15032385536 \
-numa node,nodeid=1,cpus=8-15,memdev=ram-node1 \
-uuid 126f2720-6f8e-45ab-a886-ec9277079a67 \
-display none \
......
......@@ -16,16 +16,16 @@ QEMU_AUDIO_DRV=none \
-realtime mlock=off \
-smp 32,sockets=1,cores=24,threads=1 \
-object memory-backend-file,id=ram-node0,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-instance-00000092/ram-node0,\
share=yes,size=15032385536 \
mem-path=/var/lib/libvirt/qemu/ram/-1-instance-00000092/ram-node0,share=yes,\
size=15032385536 \
-numa node,nodeid=0,cpus=0-1,memdev=ram-node0 \
-object memory-backend-file,id=ram-node1,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-instance-00000092/ram-node1,\
share=yes,size=15032385536 \
mem-path=/var/lib/libvirt/qemu/ram/-1-instance-00000092/ram-node1,share=yes,\
size=15032385536 \
-numa node,nodeid=1,cpus=2-3,memdev=ram-node1 \
-object memory-backend-file,id=ram-node2,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-instance-00000092/ram-node2,\
share=no,size=15032385536 \
mem-path=/var/lib/libvirt/qemu/ram/-1-instance-00000092/ram-node2,share=no,\
size=15032385536 \
-numa node,nodeid=2,cpus=4-5,memdev=ram-node2 \
-uuid 126f2720-6f8e-45ab-a886-ec9277079a67 \
-display none \
......
......@@ -15,20 +15,20 @@ QEMU_AUDIO_DRV=none \
-realtime mlock=off \
-smp 4,sockets=4,cores=1,threads=1 \
-object memory-backend-file,id=ram-node0,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-QEMUGuest1/ram-node0,\
share=no,size=1073741824,host-nodes=0-3,policy=bind \
mem-path=/var/lib/libvirt/qemu/ram/-1-QEMUGuest1/ram-node0,share=no,\
size=1073741824,host-nodes=0-3,policy=bind \
-numa node,nodeid=0,cpus=0,memdev=ram-node0 \
-object memory-backend-file,id=ram-node1,prealloc=yes,\
mem-path=/dev/hugepages2M/libvirt/qemu/-1-QEMUGuest1,share=yes,size=1073741824,\
host-nodes=0-3,policy=bind \
-numa node,nodeid=1,cpus=1,memdev=ram-node1 \
-object memory-backend-file,id=ram-node2,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-QEMUGuest1/ram-node2,\
share=no,size=1073741824,host-nodes=0-3,policy=bind \
mem-path=/var/lib/libvirt/qemu/ram/-1-QEMUGuest1/ram-node2,share=no,\
size=1073741824,host-nodes=0-3,policy=bind \
-numa node,nodeid=2,cpus=2,memdev=ram-node2 \
-object memory-backend-file,id=ram-node3,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-QEMUGuest1/ram-node3,\
share=no,size=1073741824,host-nodes=3,policy=bind \
mem-path=/var/lib/libvirt/qemu/ram/-1-QEMUGuest1/ram-node3,share=no,\
size=1073741824,host-nodes=3,policy=bind \
-numa node,nodeid=3,cpus=3,memdev=ram-node3 \
-object memory-backend-file,id=memdimm0,prealloc=yes,\
mem-path=/dev/hugepages2M/libvirt/qemu/-1-QEMUGuest1,share=yes,size=536870912,\
......
......@@ -20,8 +20,8 @@ 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,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-fedora/dimm1,\
discard-data=yes,share=no,size=536870912 \
mem-path=/var/lib/libvirt/qemu/ram/-1-fedora/dimm1,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 \
......
......@@ -18,7 +18,7 @@ file=/tmp/lib/domain--1-guest/master-key.aes \
-overcommit mem-lock=off \
-smp 2,sockets=2,cores=1,threads=1 \
-object memory-backend-file,id=ram-node0,\
mem-path=/var/lib/libvirt/qemu/ram/libvirt/qemu/-1-guest/ram-node0,share=yes,\
mem-path=/var/lib/libvirt/qemu/ram/-1-guest/ram-node0,share=yes,\
size=15032385536 \
-numa node,nodeid=0,cpus=0-1,memdev=ram-node0 \
-uuid 126f2720-6f8e-45ab-a886-ec9277079a67 \
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册