Yes,In qemuxml2argvtest case, mymain call qemuTestDriverInit to init qemu driver,
qemuTestDriverInit call mkdtemp() to init stateDir, so stateDir is randomly. But
'-monitor' part of the command line must be a const value. Can I use a const value
"/tmp/lib" to instead of random value at qemuxml2argvtest?
-----邮件原件-----
发件人: Michal Privoznik [mailto:mprivozn@redhat.com]
发送时间: 2017年10月27日 0:17
收件人: Caoxinhua; libvir-list(a)redhat.com; jferlan(a)redhat.com; mkletzan(a)redhat.com;
berrange(a)redhat.com
抄送: Yanqiangjun; Huangweidong (C); Wangjing (King, Euler); weifuqiang
主题: Re: [libvirt] [PATCH v2] qemu: change monitor.sock from
/var/lib/libvirt/qemu/domain-*** to /var/run/libvirt/qemu/domain-***
On 10/16/2017 04:08 AM, xinhua.Cao wrote:
directory /var/lib alway is Persistence directory, but in redhat
system, /var/run is memory directory.
our running domain xml is saved at /var/run/libvirt/qemu. so if we
cold reset system, the /var/run/libvirt/qemu directory is clear, but
/var/lib/libvirt/qemu/domain-*** is saved. so there have same
/var/lib/libvirt/qemu/domain-*** directory will be left over at system cold reset.
---
src/qemu/qemu_domain.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index
ed27a91..3e6fe9b 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -1674,7 +1674,7 @@ qemuDomainSetPrivatePaths(virQEMUDriverPtr driver,
goto cleanup;
if (!priv->libDir &&
- virAsprintf(&priv->libDir, "%s/domain-%s", cfg->libDir,
domname) < 0)
+ virAsprintf(&priv->libDir, "%s/domain-%s", cfg->stateDir,
+ domname) < 0)
goto cleanup;
if (!priv->channelTargetDir &&
Almost. I see a problem with this patch. Problem is that qemuxml2argvtest needs to be
updated. Which is not trivial because state dir is a tempdir (mkdtemp()), and thus
'-monitor' part of the command line changes with each test invocation.
Michal