[libvirt] [RFC PATCH auto partition NUMA guest domains v1 0/2] auto partition guests providing the host NUMA topology

Jiri Denemark jdenemar at redhat.com
Tue Sep 25 12:37:15 UTC 2018


On Tue, Sep 25, 2018 at 12:02:40 +0200, Wim Ten Have wrote:
> From: Wim ten Have <wim.ten.have at oracle.com>
> 
> This patch extends the guest domain administration adding support
> to automatically advertise the host NUMA node capabilities obtained
> architecture under a guest by creating a vNUMA copy.

I'm pretty sure someone would find this useful and such configuration is
perfectly valid in libvirt. But I don't think there is a compelling
reason to add some magic into the domain XML which would automatically
expand to such configuration. It's basically a NUMA placement policy and
libvirt generally tries to avoid including any kind of policies and
rather just provide all the mechanisms and knobs which can be used by
applications to implement any policy they like.

> The mechanism is enabled by setting the check='numa' attribute under
> the CPU 'host-passthrough' topology:
>   <cpu mode='host-passthrough' check='numa' .../>

Anyway, this is definitely not the right place for such option. The
'check' attribute is described as

    "Since 3.2.0, an optional check attribute can be used to request a
    specific way of checking whether the virtual CPU matches the
    specification."

and the new 'numa' value does not fit in there in any way.

Moreover the code does the automatic NUMA placement at the moment
libvirt parses the domain XML, which is not the right place since it
would break migration, snapshots, and save/restore features.

We have existing placement attributes for vcpu and numatune/memory
elements which would have been much better place for implementing such
feature. And event cpu/numa element could have been enhanced to support
similar configuration.

Jirka




More information about the libvir-list mailing list