提交 3bab51e0 编写于 作者: M Michal Privoznik

qemu: mkdir memory_backing_dir on startup

In 48d9e6cd and friends we've allowed users to back guest
memory by a file inside the host. And in order to keep things
manageable the memory_backing_dir variable was introduced to
qemu.conf to specify the directory where the files are kept.
However, libvirt's policy is that directories are created on
domain startup if they don't exist. We've missed this one.
Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
上级 5970b139
......@@ -71,6 +71,15 @@
</change>
</section>
<section title="Bug fixes">
<change>
<summary>
qemu: Create memory_backing_dir on startup
</summary>
<description>
Libvirt's policy is that directories are created on startup if
they don't exist. We've missed this one.
</description>
</change>
</section>
</release>
<release version="v3.3.0" date="2017-05-05">
......
......@@ -706,6 +706,11 @@ qemuStateInitialize(bool privileged,
cfg->nvramDir);
goto error;
}
if (virFileMakePath(cfg->memoryBackingDir) < 0) {
virReportSystemError(errno, _("Failed to create memory backing dir %s"),
cfg->memoryBackingDir);
goto error;
}
qemu_driver->qemuImgBinary = virFindFileInPath("qemu-img");
......@@ -830,6 +835,13 @@ qemuStateInitialize(bool privileged,
(int) cfg->group);
goto error;
}
if (chown(cfg->memoryBackingDir, cfg->user, cfg->group) < 0) {
virReportSystemError(errno,
_("unable to set ownership of '%s' to %d:%d"),
cfg->memoryBackingDir, (int) cfg->user,
(int) cfg->group);
goto error;
}
run_uid = cfg->user;
run_gid = cfg->group;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册