[libvirt] [PATCH 6/7] conf: Prohibit emulatorpin if vcpu placement is auto

Martin Kletzander mkletzan at redhat.com
Fri Oct 12 14:06:30 UTC 2012


On 10/12/2012 11:50 AM, Osier Yang wrote:
> When vcpu placement is "auto", the domain process will be pinned
> to advisory nodeset from querying numad, While emulatorpin will
> override the pinning. That means both of them are to set the
> pinning policy for domain process, but conflicts with each other.
> 
> This patch prohibit specifiying emulatorpin if vcpu placement
> is "auto". See more details in PATCH 1/7.
> ---
>  src/conf/domain_conf.c |    7 +++++++
>  1 files changed, 7 insertions(+), 0 deletions(-)
> 
> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> index 17254e3..dda3a12 100644
> --- a/src/conf/domain_conf.c
> +++ b/src/conf/domain_conf.c
> @@ -8873,6 +8873,13 @@ static virDomainDefPtr virDomainDefParseXML(virCapsPtr caps,
>      }
>  
>      if (n) {
> +        if (def->placement_mode == VIR_DOMAIN_CPU_PLACEMENT_MODE_AUTO) {
> +            virReportError(VIR_ERR_XML_ERROR, "%s",
> +                           _("emulatorpin is not allowed when vcpu "
> +                             "placement is auto"))
> +            goto error;
> +        }
> +
>          if (n > 1) {
>              virReportError(VIR_ERR_XML_ERROR, "%s",
>                             _("only one emulatorpin is supported"));
> 

This is the same thing as with those vcpupins before.  We cannot make
old machines onloadable.

Martin




More information about the libvir-list mailing list