libxl: add dump dir to libxlDriverConfig object

Signed-off-by: Jim Fehlig <jfehlig@suse.com>
This commit is contained in:
Jim Fehlig 2014-02-19 16:09:36 -07:00
parent 51b9b39127
commit c2de456e4e
3 changed files with 12 additions and 0 deletions

View File

@ -97,6 +97,7 @@ libxlDriverConfigDispose(void *obj)
VIR_FREE(cfg->stateDir);
VIR_FREE(cfg->libDir);
VIR_FREE(cfg->saveDir);
VIR_FREE(cfg->autoDumpDir);
}
static int
@ -1078,6 +1079,8 @@ libxlDriverConfigNew(void)
goto error;
if (VIR_STRDUP(cfg->saveDir, LIBXL_SAVE_DIR) < 0)
goto error;
if (VIR_STRDUP(cfg->autoDumpDir, LIBXL_DUMP_DIR) < 0)
goto error;
if (virAsprintf(&log_file, "%s/libxl-driver.log", cfg->logDir) < 0)
goto error;

View File

@ -48,6 +48,7 @@
# define LIBXL_LOG_DIR LOCALSTATEDIR "/log/libvirt/libxl"
# define LIBXL_LIB_DIR LOCALSTATEDIR "/lib/libvirt/libxl"
# define LIBXL_SAVE_DIR LIBXL_LIB_DIR "/save"
# define LIBXL_DUMP_DIR LIBXL_LIB_DIR "/dump"
# define LIBXL_BOOTLOADER_PATH BINDIR "/pygrub"
@ -82,6 +83,7 @@ struct _libxlDriverConfig {
char *stateDir;
char *libDir;
char *saveDir;
char *autoDumpDir;
};

View File

@ -977,6 +977,13 @@ libxlStateInitialize(bool privileged,
virStrerror(errno, ebuf, sizeof(ebuf)));
goto error;
}
if (virFileMakePath(cfg->autoDumpDir) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR,
_("failed to create dump dir '%s': %s"),
cfg->autoDumpDir,
virStrerror(errno, ebuf, sizeof(ebuf)));
goto error;
}
/* read the host sysinfo */
libxl_driver->hostsysinfo = virSysinfoRead();