On Wed, 28 Jun 2017 15:21:29 +0100 "Daniel P. Berrange" <berrange@xxxxxxxxxx> wrote: > On Wed, Jun 28, 2017 at 03:56:36PM +0200, Wim Ten Have wrote: > > From: Wim ten Have <wim.ten.have@xxxxxxxxxx> > > > > Add libvirtd NUMA cell domain administration functionality to > > describe underlying cell id sibling distances in full fashion > > when configuring HVM guests. > > > > [below is an example of a 4 node setup] Hi Daniel, I think you're best to consult on below issue too. This given it is related to the changes I am preparing but was obviously not yet discussed. Your other hint towards symmetry on distance configuration and autonomous actions made me more carefully approach whole. Working <numa> <distance> support, specifically for xenlight driver I for certain topic related detail consult QEMU/KVM behavior. Here when describing a guest XML configuration in libvirt there's this nuance when <numa> comes into the game. Imagine below. <vcpu placement='static' current='5'>8</vcpu> ... <cpu mode='host-passthrough'> <numa> <cell id='0' cpus='0,2' memory='262144' unit='KiB'/> <cell id='1' cpus='1,3' memory='262144' unit='KiB'/> </numa> </cpu> Running QEMU/KVM with such onlines 5 CPUs. This is wrong IMHO. <wtenhave@kvm26:35> lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 5 On-line CPU(s) list: 0-4 ... NUMA node(s): 2 ... NUMA node0 CPU(s): 0,2,4 NUMA node1 CPU(s): 1,3 My thinking is that <vcpu ... current='_5_' had to be computed somewhere around under; virDomainDefParseXML() -> virDomainDefPostParse() path and forcibly put to '4'. <vcpu placement='static' current='4'>8</vcpu> This is of course a <numa> related issue. Is it worth fixing this (QEMU/KVM) case? If doing that would that potentially hurt specific use and that way libvirt? - Wim. -- Wim ten Have | Consulting Member of Technical Staff Oracle Linux and VM Development Engineering ORACLE Nederland BV | Hertogswetering 163-167 | 3543 AS Utrecht/NL -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list