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

Lubomir Rintel lkundrak at v3.sk
Tue Apr 7 13:37:11 UTC 2015


/var/run may reside on a tmpfs and we fail to create the PID file if
/var/run/lxc does not exist.

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;
+    }
+
+    if (virFileMakePath(LXC_STATE_DIR) < 0) {
+        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,
-- 
2.1.0




More information about the libvir-list mailing list