mirror of https://gitee.com/openkylin/libvirt.git
qemu: mkdir memory_backing_dir on startup
In 48d9e6cdcc
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: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
parent
5970b13982
commit
3bab51e056
|
@ -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;
|
||||
|
|
Loading…
Reference in New Issue