[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] libxl: pass device model info down into HVM domain build functions.
# HG changeset patch # User Ian Campbell <ian.campbell@xxxxxxxxxx> # Date 1306257956 -3600 # Node ID fab5ae42dd439a1ed6d7294a0b13dc0729544c1b # Parent 3cca0eb037664fccafc0fb289632d54ea10918fc libxl: pass device model info down into HVM domain build functions. The builder will soon need to know the device model version in order to select the correct firmware. Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx> Acked-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Committed-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> --- diff -r 3cca0eb03766 -r fab5ae42dd43 tools/libxl/libxl_create.c --- a/tools/libxl/libxl_create.c Tue May 24 18:24:58 2011 +0100 +++ b/tools/libxl/libxl_create.c Tue May 24 18:25:56 2011 +0100 @@ -144,8 +144,11 @@ return 0; } -int libxl__domain_build(libxl__gc *gc, libxl_domain_build_info *info, - uint32_t domid, libxl__domain_build_state *state) +int libxl__domain_build(libxl__gc *gc, + libxl_domain_build_info *info, + libxl_device_model_info *dm_info, + uint32_t domid, + libxl__domain_build_state *state) { char **vments = NULL, **localents = NULL; struct timeval start_time; @@ -158,7 +161,7 @@ gettimeofday(&start_time, NULL); if (info->hvm) { - ret = libxl__build_hvm(gc, domid, info, state); + ret = libxl__build_hvm(gc, domid, info, dm_info, state); if (ret) goto out; @@ -437,7 +440,7 @@ free(dm_info->saved_state); dm_info->saved_state = NULL; } - ret = libxl__domain_build(gc, &d_config->b_info, domid, &state); + ret = libxl__domain_build(gc, &d_config->b_info, dm_info, domid, &state); } if (ret) { diff -r 3cca0eb03766 -r fab5ae42dd43 tools/libxl/libxl_dm.c --- a/tools/libxl/libxl_dm.c Tue May 24 18:24:58 2011 +0100 +++ b/tools/libxl/libxl_dm.c Tue May 24 18:25:56 2011 +0100 @@ -611,7 +611,7 @@ ret = libxl__domain_make(gc, &c_info, &domid); if (ret) goto out_free; - ret = libxl__domain_build(gc, &b_info, domid, &state); + ret = libxl__domain_build(gc, &b_info, info, domid, &state); if (ret) goto out_free; diff -r 3cca0eb03766 -r fab5ae42dd43 tools/libxl/libxl_dom.c --- a/tools/libxl/libxl_dom.c Tue May 24 18:24:58 2011 +0100 +++ b/tools/libxl/libxl_dom.c Tue May 24 18:25:56 2011 +0100 @@ -270,7 +270,8 @@ } static const char *libxl__domain_firmware(libxl__gc *gc, - libxl_domain_build_info *info) + libxl_domain_build_info *info, + libxl_device_model_info *dm_info) { return libxl__abs_path(gc, info->u.hvm.firmware ? : "hvmloader", @@ -278,7 +279,9 @@ } int libxl__build_hvm(libxl__gc *gc, uint32_t domid, - libxl_domain_build_info *info, libxl__domain_build_state *state) + libxl_domain_build_info *info, + libxl_device_model_info *dm_info, + libxl__domain_build_state *state) { libxl_ctx *ctx = libxl__gc_owner(gc); int ret, rc = ERROR_INVAL; @@ -289,7 +292,7 @@ domid, (info->max_memkb - info->video_memkb) / 1024, (info->target_memkb - info->video_memkb) / 1024, - libxl__domain_firmware(gc, info)); + libxl__domain_firmware(gc, info, dm_info)); if (ret) { LIBXL__LOG_ERRNOVAL(ctx, LIBXL__LOG_ERROR, ret, "hvm building failed"); goto out; diff -r 3cca0eb03766 -r fab5ae42dd43 tools/libxl/libxl_internal.h --- a/tools/libxl/libxl_internal.h Tue May 24 18:24:58 2011 +0100 +++ b/tools/libxl/libxl_internal.h Tue May 24 18:25:56 2011 +0100 @@ -186,7 +186,9 @@ _hidden int libxl__build_pv(libxl__gc *gc, uint32_t domid, libxl_domain_build_info *info, libxl__domain_build_state *state); _hidden int libxl__build_hvm(libxl__gc *gc, uint32_t domid, - libxl_domain_build_info *info, libxl__domain_build_state *state); + libxl_domain_build_info *info, + libxl_device_model_info *dm_info, + libxl__domain_build_state *state); _hidden int libxl__domain_rename(libxl__gc *gc, uint32_t domid, const char *old_name, const char *new_name, @@ -245,7 +247,9 @@ /* from xl_create */ _hidden int libxl__domain_make(libxl__gc *gc, libxl_domain_create_info *info, uint32_t *domid); -_hidden int libxl__domain_build(libxl__gc *gc, libxl_domain_build_info *info, +_hidden int libxl__domain_build(libxl__gc *gc, + libxl_domain_build_info *info, + libxl_device_model_info *dm_info, uint32_t domid, libxl__domain_build_state *state); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |