[libvirt] [PATCH v2] libxl: include a XLU_Config in _libxlDriverConfig
Jim Fehlig
jfehlig at suse.com
Fri May 8 18:16:31 UTC 2015
Olaf Hering wrote:
> Upcoming changes for vscsi will use libxlutil.so to prepare the
> configuration for libxl. The helpers needs a xlu struct for logging.
>
s/needs a/need an/
> Provide one and reuse the existing output as log target.
>
> Signed-off-by: Olaf Hering <olaf at aepfle.de>
> Cc: Jim Fehlig <jfehlig at suse.com>
> ---
>
> v2:
> - call xlu_cfg_destroy, unconditionally
> - fix cpp indention in libxl_conf.h
>
> src/libxl/libxl_conf.c | 7 +++++++
> src/libxl/libxl_conf.h | 7 +++++++
> 2 files changed, 14 insertions(+)
>
> diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c
> index fccada5..e1bc0f6 100644
> --- a/src/libxl/libxl_conf.c
> +++ b/src/libxl/libxl_conf.c
> @@ -92,6 +92,7 @@ libxlDriverConfigDispose(void *obj)
> virObjectUnref(cfg->caps);
> libxl_ctx_free(cfg->ctx);
> xtl_logger_destroy(cfg->logger);
> + xlu_cfg_destroy(cfg->xlu);
> if (cfg->logger_file)
> VIR_FORCE_FCLOSE(cfg->logger_file);
>
> @@ -1468,6 +1469,12 @@ libxlDriverConfigNew(void)
> goto error;
> }
>
> + cfg->xlu = xlu_cfg_init(cfg->logger_file, "libvirt");
> + if (!cfg->xlu) {
> + VIR_ERROR(_("cannot create xlu for libxenlight, disabling driver"));
> + goto error;
> + }
> +
> if (libxl_ctx_alloc(&cfg->ctx, LIBXL_VERSION, 0, cfg->logger)) {
> VIR_ERROR(_("cannot initialize libxenlight context, probably not "
> "running in a Xen Dom0, disabling driver"));
> diff --git a/src/libxl/libxl_conf.h b/src/libxl/libxl_conf.h
> index 0a1c0db..24fa960 100644
> --- a/src/libxl/libxl_conf.h
> +++ b/src/libxl/libxl_conf.h
> @@ -27,6 +27,12 @@
> # define LIBXL_CONF_H
>
> # include <libxl.h>
> +# ifdef HAVE_LIBXLUTIL_H
> +# include <libxlutil.h>
> +# else
> +typedef struct XLU_Config XLU_Config;
> +XLU_Config *xlu_cfg_init(FILE *report, const char *report_filename);
>
You forgot to add xlu_cfg_destroy here. Also, libvirt style seems to
prefer the explicit 'extern', e.g.
extern XLU_Config *xlu_cfg_init(FILE *report, const char *report_filename);
Regards,
Jim
> +# endif
>
> # include "internal.h"
> # include "libvirt_internal.h"
> @@ -92,6 +98,7 @@ struct _libxlDriverConfig {
> /* log stream for driver-wide libxl ctx */
> FILE *logger_file;
> xentoollog_logger *logger;
> + XLU_Config *xlu;
> /* libxl ctx for driver wide ops; getVersion, getNodeInfo, ... */
> libxl_ctx *ctx;
>
>
>
>
More information about the libvir-list
mailing list