[libvirt] [PATCH v4 4/8] libxl: do not enable nested HVM unless global nested_hvm option enabled

Daniel P. Berrangé berrange at redhat.com
Fri Feb 9 10:23:36 UTC 2018


On Thu, Feb 08, 2018 at 11:58:57PM +0100, Marek Marczykowski-Górecki wrote:
> Introduce global libxl option for enabling nested HVM feature, similar
> to kvm module parameter. This will prevent enabling experimental feature
> by mere presence of <cpu mode='host-passthrough'> element in domain
> config, unless explicitly enabled. <cpu mode='host-passthrough'> element
> may be used to configure other features, like NUMA, or CPUID.
> Also, adjust xenconfig driver to appropriately translate to/from
> nestedhvm=1.
> 
> While at it, adjust xenconfig driver to not override def->cpu if already
> set elsewhere. This will help with adding cpuid support.
> 
> ---
> As for xenconfig part, I'm not sure if missing "nestedhvm" option in xl
> config shouldn't produce <cpu> element too, to disable nested HVM (as it
> would be on plain xl). Any preference?
> 
> Changes since v3:
>  - use config option nested_hvm, instead of requiring explicit <feature
>    ...> entries
>  - title changed from "libxl: do not enable nested HVM by mere presence
>    of <cpu> element"
>  - xenconfig: don't add <feature policy='force' name='vmx'/> since it is
>    implied by presence of <cpu> element
>  - xenconfig: produce <cpu> element even when converting on host not
>    supporting vmx/svm, to not lose setting value
> Changes since v2:
>  - new patch
> ---
>  src/libxl/libxl.conf           |  6 ++++++-
>  src/libxl/libxl_conf.c         |  7 ++++++-
>  src/libxl/libxl_conf.h         |  2 ++-
>  src/xenconfig/xen_xl.c         | 37 +++++++++++------------------------
>  tests/libxlxml2domconfigtest.c |  3 +++-
>  5 files changed, 29 insertions(+), 26 deletions(-)
> 
> diff --git a/src/libxl/libxl.conf b/src/libxl/libxl.conf
> index 264af7c..0e842c9 100644
> --- a/src/libxl/libxl.conf
> +++ b/src/libxl/libxl.conf
> @@ -41,3 +41,9 @@
>  #
>  #keepalive_interval = 5
>  #keepalive_count = 5
> +
> +# Nested HVM global control. In order to use nested HVM feature, this option
> +# needs to be enabled, in addition to specifying <cpu mode='host-passthrough'>
> +# in domain configuration.
> +# By default it is disabled.
> +#nested_hvm = 0

FYI you need to update lbivirtd_libxl.aug and
test_libvirtd_libxl.aug to handle parsing of this new parameter


Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




More information about the libvir-list mailing list