Hi Cedric,
On Tue, 2015-04-07 at 16:18 +0200, Cedric Bosdonnat wrote:
Hello Lubomir
On Tue, 2015-04-07 at 15:37 +0200, Lubomir Rintel wrote:
> /var/run may reside on a tmpfs and we fail to create the PID file if
> /var/run/lxc does not exist.
Just mentioning the fact that this folder may not exist is OK. We have
the same problem right after the libvirt installation too when creating
an lxc domain.
> Other drivers (well, BHYVE) seem to do the same thing.
>
> Signed-off-by: Lubomir Rintel <lkundrak(a)v3.sk>
> ---
> src/lxc/lxc_driver.c | 14 ++++++++++++++
> 1 file changed, 14 insertions(+)
>
> diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c
> index 245000d..4363898 100644
> --- a/src/lxc/lxc_driver.c
> +++ b/src/lxc/lxc_driver.c
> @@ -1648,6 +1648,20 @@ static int lxcStateInitialize(bool privileged,
> if (!(caps = virLXCDriverGetCapabilities(lxc_driver, false)))
> goto cleanup;
>
> + if (virFileMakePath(LXC_LOG_DIR) < 0) {
> + virReportSystemError(errno,
> + _("Failed to mkdir %s"),
> + LXC_LOG_DIR);
> + goto cleanup;
> + }
Isn't that one automatically created so far?
Not sure really. I didn't run into any problems with this one, just
noticed that BYHIVE creates it upon start and I didn't see LXC doing
that...
> +
> + if (virFileMakePath(LXC_STATE_DIR) < 0) {
I'ld rather use lxc_driver->config->stateDir instead LXC_STATE_DIR. I
wrote a patch for that this morning and was about to email it ;)
Well, I don't really know.
I was thinking that maybe virPidFileWritePath() should create the path
when needed, analogously to virPidFileWrite(), but creating it on start
seemed a bit more consostent and less laborous.
I don't feel strongly either way; feel free to send your patch instead
of this one.
Thanks,
Lubo