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

Lubomir Rintel lkundrak at v3.sk
Tue Apr 7 14:29:42 UTC 2015


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

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




More information about the libvir-list mailing list