mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
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.
This commit is contained in:
parent
10c3db7308
commit
6ce9b85dee
@ -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;
|
||||
|
Loading…
x
Reference in New Issue
Block a user