* LIBXL_HAVE_PV_SHIM
*
* If this is defined, libxl_domain_build_info's pvh type information
- * contains members pvshim, pvshim_path, pvshim_cmdline.
+ * contains members pvshim, pvshim_path, pvshim_cmdline, pvshim_extra.
*/
#define LIBXL_HAVE_PV_SHIM 1
break;
case LIBXL_DOMAIN_TYPE_PVH:
state->shim_path = info->u.pvh.pvshim_path;
- state->shim_cmdline = info->u.pvh.pvshim_cmdline;
+ state->shim_cmdline = GCSPRINTF("%s%s%s",
+ info->u.pvh.pvshim_cmdline,
+ info->u.pvh.pvshim_extra ? " " : "",
+ info->u.pvh.pvshim_extra ? info->u.pvh.pvshim_extra : "");
ret = libxl__build_hvm(gc, domid, d_config, state);
if (ret)
#define DOMID_XS_PATH "domid"
#define INVALID_DOMID ~0
#define PVSHIM_BASENAME "xen-shim"
-#define PVSHIM_CMDLINE "pv-shim console=xen,pv sched=null loglvl=all guest_loglvl=all apic_verbosity=debug e820-verbose"
+#define PVSHIM_CMDLINE "pv-shim console=xen,pv sched=null"
/* Size macros. */
#define __AC(X,Y) (X##Y)
("pvshim", libxl_defbool),
("pvshim_path", string),
("pvshim_cmdline", string),
+ ("pvshim_extra", string), # eg "loglvl=all guest_loglvl=all apic_verbosity=debug e820-verbose"
])),
("invalid", None),
], keyvar_init_val = "LIBXL_DOMAIN_TYPE_INVALID")),