提交 6ce9b85d 编写于 作者: J Jim Fehlig

libxl: support enabling and disabling <hap> feature

Until now, the libxl driver ignored any <hap> setting in domain XML
and deferred to libxl, which enables hap if not specified. While
this is a good default, it prevents disabling hap if desired.

This change allows disabling hap with <hap state='off'/>. hap is
explicitly enabled with <hap/> or <hap state='on/>. Absense of <hap>
retains current behavior of deferring default state to libxl.
上级 10c3db73
......@@ -511,10 +511,24 @@ libxlMakeDomCreateInfo(libxl_ctx *ctx,
libxl_domain_create_info_init(c_info);
if (def->os.type == VIR_DOMAIN_OSTYPE_HVM)
if (def->os.type == VIR_DOMAIN_OSTYPE_HVM) {
c_info->type = LIBXL_DOMAIN_TYPE_HVM;
else
switch ((virTristateSwitch) def->features[VIR_DOMAIN_FEATURE_HAP]) {
case VIR_TRISTATE_SWITCH_OFF:
libxl_defbool_set(&c_info->hap, false);
break;
case VIR_TRISTATE_SWITCH_ON:
libxl_defbool_set(&c_info->hap, true);
break;
case VIR_TRISTATE_SWITCH_ABSENT:
case VIR_TRISTATE_SWITCH_LAST:
break;
}
} else {
c_info->type = LIBXL_DOMAIN_TYPE_PV;
}
if (VIR_STRDUP(c_info->name, def->name) < 0)
goto error;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册