[libvirt] [PATCH] lxc: create the required directories upon driver start

Cedric Bosdonnat cbosdonnat at suse.com
Tue Apr 7 14:18:48 UTC 2015


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 at 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?

> +
> +    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 ;)

--
Cedric

> +        virReportSystemError(errno,
> +                             _("Failed to mkdir %s"),
> +                             LXC_STATE_DIR);
> +        goto cleanup;
> +    }
> +
>      /* Get all the running persistent or transient configs first */
>      if (virDomainObjListLoadAllConfigs(lxc_driver->domains,
>                                         cfg->stateDir,





More information about the libvir-list mailing list