<div dir="ltr"><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText">Hi Daniel <a href="http://et.al">et.al</a>,</p>

<p class="gmail-MsoPlainText">Running into the following errors when attempting to
start up a multi-vNUMA node VM backed by 1G huge page per physical NUMA node. (details below)</p>

<p class="gmail-MsoPlainText">error: unsupported configuration: Per-node memory binding
is not supported with this QEMU</p>

<p class="gmail-MsoPlainText">(or in another case)</p>

<p class="gmail-MsoPlainText">error: unsupported configuration: huge pages per NUMA
node are not supported with this QEMU</p><p class="gmail-MsoPlainText"><br></p><p class="gmail-MsoPlainText">What am I missing ? </p><p class="gmail-MsoPlainText">Thanks!<br></p><p class="gmail-MsoPlainText"><span></span></p>

<p class="gmail-MsoPlainText">Vinod<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText">System : (CentOS 7.3)<span></span></p>

<p class="gmail-MsoPlainText">---------<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"># numactl -H<span></span></p>

<p class="gmail-MsoPlainText">available: 2 nodes (0-1)<span></span></p>

<p class="gmail-MsoPlainText">node 0 cpus: 0 1 2 3 4 5 6 7 16 17 18 19 20 21 22 23 </p><p class="gmail-MsoPlainText">node
0 size: 65320 MB </p><p class="gmail-MsoPlainText">node 0 free: 62672 MB </p><p class="gmail-MsoPlainText">node 1 cpus: 8 9 10 11 12 13 14 15 24 25
26 27 28 29 30 31 </p><p class="gmail-MsoPlainText">node 1 size: 65536 MB </p><p class="gmail-MsoPlainText">node 1 free: 63323 MB </p><p class="gmail-MsoPlainText">node distances:<span></span></p>

<p class="gmail-MsoPlainText">node   0   1 <span></span></p>

<p class="gmail-MsoPlainText">  0:  10  20<span></span></p>

<p class="gmail-MsoPlainText">  1:  20  10 <span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"># uname -a<span></span></p>

<p class="gmail-MsoPlainText">Linux <hostname> 3.10.0-514.el7.x86_64 #1 SMP Tue
Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux</p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"># virsh version<span></span></p>

<p class="gmail-MsoPlainText">Compiled against library: libvirt 2.0.0<span></span></p>

<p class="gmail-MsoPlainText">Using library: libvirt 2.0.0<span></span></p>

<p class="gmail-MsoPlainText">Using API: QEMU 2.0.0<span></span></p>

<p class="gmail-MsoPlainText">Running hypervisor: QEMU 1.5.3<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"># cat /proc/cmdline<span></span></p>

<p class="gmail-MsoPlainText">BOOT_IMAGE=/vmlinuz-3.10.0-514.el7.x86_64
root=/dev/mapper/cl-root ro crashkernel=auto <a href="http://rd.lvm.lv">rd.lvm.lv</a>=cl/root
<a href="http://rd.lvm.lv">rd.lvm.lv</a>=cl/swap rhgb quiet LANG=en_US.UTF-8 intel_iommu=on iommu=pt
default_hugepagesz=1G hugepagesz=1G hugepages=16 hugepagesz=2M hugepages=4096<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"># mount<span></span></p>

<p class="gmail-MsoPlainText">...<span></span></p>

<p class="gmail-MsoPlainText">...<span></span></p>

<p class="gmail-MsoPlainText">none on /dev/hugepages1G type hugetlbfs
(rw,relatime,seclabel,pagesize=1G)<span></span></p>

<p class="gmail-MsoPlainText">none on /dev/hugepages2M type hugetlbfs
(rw,relatime,seclabel,pagesize=2M)</p>

<p class="gmail-MsoPlainText">-----------<span></span></p>

<p class="gmail-MsoPlainText"><br></p>

<p class="gmail-MsoPlainText">Test 1:  1G Huge page memoryBacking & memory
binding per numa node, and virtual numa nodes.<span></span></p>

<p class="gmail-MsoPlainText">--------<span></span></p>

<p class="gmail-MsoPlainText"><br></p>

<p class="gmail-MsoPlainText"><domain type='kvm'><span></span></p>

<p class="gmail-MsoPlainText"> 
<name>vm1</name><span></span></p>

<p class="gmail-MsoPlainText"> 
<uuid>62077ba4-9d7a-4b81-8dfb-b0cd55693cc2</uuid><span></span></p>

<p class="gmail-MsoPlainText">  <memory
unit='KiB'>8388608</memory><span></span></p>

<p class="gmail-MsoPlainText">  <currentMemory
unit='KiB'>8388608</currentMemory><span></span></p>

<p class="gmail-MsoPlainText">  <memtune><span></span></p>

<p class="gmail-MsoPlainText">    <hard_limit
unit='KiB'>9437184</hard_limit><span></span></p>

<p class="gmail-MsoPlainText">  </memtune><span></span></p>

<p class="gmail-MsoPlainText"> 
<memoryBacking><span></span></p>

<p class="gmail-MsoPlainText">   
<hugepages><span></span></p>

<p class="gmail-MsoPlainText">      <page
size='1048576' unit='KiB' nodeset='0'/><span></span></p>

<p class="gmail-MsoPlainText">      <page
size='1048576' unit='KiB' nodeset='1'/><span></span></p>

<p class="gmail-MsoPlainText">    </hugepages><span></span></p>

<p class="gmail-MsoPlainText"> 
</memoryBacking><span></span></p>

<p class="gmail-MsoPlainText">  <vcpu
placement='static'>4</vcpu><span></span></p>

<p class="gmail-MsoPlainText">  <cputune><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='0' cpuset='1'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='1' cpuset='2'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='2' cpuset='8'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='3' cpuset='9'/><span></span></p>

<p class="gmail-MsoPlainText">  </cputune><span></span></p>

<p class="gmail-MsoPlainText">  <numatune><span></span></p>

<p class="gmail-MsoPlainText">    <memory
mode='strict' nodeset='0-1'/><span></span></p>

<p class="gmail-MsoPlainText">    <memnode
cellid='0' mode='strict' nodeset='0'/><span></span></p>

<p class="gmail-MsoPlainText">    <memnode
cellid='1' mode='strict' nodeset='1'/><span></span></p>

<p class="gmail-MsoPlainText">  </numatune><span></span></p>

<p class="gmail-MsoPlainText">  <os><span></span></p>

<p class="gmail-MsoPlainText">    <type
arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type><span></span></p>

<p class="gmail-MsoPlainText">    <boot
dev='hd'/><span></span></p>

<p class="gmail-MsoPlainText">  </os><span></span></p>

<p class="gmail-MsoPlainText">  <features><span></span></p>

<p class="gmail-MsoPlainText">    <acpi/><span></span></p>

<p class="gmail-MsoPlainText">    <apic/><span></span></p>

<p class="gmail-MsoPlainText">  </features><span></span></p>

<p class="gmail-MsoPlainText">  <cpu
mode='custom' match='exact'><span></span></p>

<p class="gmail-MsoPlainText">    <model
fallback='allow'>IvyBridge</model><span></span></p>

<p class="gmail-MsoPlainText">    <numa><span></span></p>

<p class="gmail-MsoPlainText">      <cell
id='0' cpus='0-1' memory='4194304' unit='KiB'/><span></span></p>

<p class="gmail-MsoPlainText">      <cell
id='1' cpus='2-3' memory='4194304' unit='KiB'/><span></span></p>

<p class="gmail-MsoPlainText">    </numa><span></span></p>

<p class="gmail-MsoPlainText">  </cpu><span></span></p>

<p class="gmail-MsoPlainText">...<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"># virsh start vm1<span></span></p>

<p class="gmail-MsoPlainText">error: Failed to start domain vm1<span></span></p>

<p class="gmail-MsoPlainText">error: unsupported configuration: Per-node memory binding
is not supported with this QEMU</p>

<p class="gmail-MsoPlainText"><br></p>

<p class="gmail-MsoPlainText">Test 2: 1G Huge page memoryBacking per NUMA
node and virtual numa nodes.<span></span></p>

<p class="gmail-MsoPlainText">------<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"><domain type='kvm'><span></span></p>

<p class="gmail-MsoPlainText"> 
<name>vm1</name><span></span></p>

<p class="gmail-MsoPlainText"> 
<uuid>62077ba4-9d7a-4b81-8dfb-b0cd55693cc2</uuid><span></span></p>

<p class="gmail-MsoPlainText">  <memory
unit='KiB'>8388608</memory><span></span></p>

<p class="gmail-MsoPlainText">  <currentMemory
unit='KiB'>8388608</currentMemory><span></span></p>

<p class="gmail-MsoPlainText">  <memtune><span></span></p>

<p class="gmail-MsoPlainText">    <hard_limit
unit='KiB'>9437184</hard_limit><span></span></p>

<p class="gmail-MsoPlainText">  </memtune><span></span></p>

<p class="gmail-MsoPlainText"> 
<memoryBacking><span></span></p>

<p class="gmail-MsoPlainText">   
<hugepages><span></span></p>

<p class="gmail-MsoPlainText">      <page
size='1048576' unit='KiB' nodeset='0'/><span></span></p>

<p class="gmail-MsoPlainText">      <page
size='1048576' unit='KiB' nodeset='1'/><span></span></p>

<p class="gmail-MsoPlainText">   
</hugepages><span></span></p>

<p class="gmail-MsoPlainText">  </memoryBacking><span></span></p>

<p class="gmail-MsoPlainText">  <vcpu
placement='static'>4</vcpu><span></span></p>

<p class="gmail-MsoPlainText">  <cputune><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='0' cpuset='1'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='1' cpuset='2'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='2' cpuset='8'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='3' cpuset='9'/><span></span></p>

<p class="gmail-MsoPlainText">  </cputune><span></span></p>

<p class="gmail-MsoPlainText">  <os><span></span></p>

<p class="gmail-MsoPlainText">    <type
arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type><span></span></p>

<p class="gmail-MsoPlainText">    <boot
dev='hd'/><span></span></p>

<p class="gmail-MsoPlainText">  </os><span></span></p>

<p class="gmail-MsoPlainText">  <features><span></span></p>

<p class="gmail-MsoPlainText">    <acpi/><span></span></p>

<p class="gmail-MsoPlainText">    <apic/><span></span></p>

<p class="gmail-MsoPlainText">  </features><span></span></p>

<p class="gmail-MsoPlainText">  <cpu
mode='custom' match='exact'><span></span></p>

<p class="gmail-MsoPlainText">    <model
fallback='allow'>IvyBridge</model><span></span></p>

<p class="gmail-MsoPlainText">    <numa><span></span></p>

<p class="gmail-MsoPlainText">      <cell
id='0' cpus='0-1' memory='4194304' unit='KiB'/><span></span></p>

<p class="gmail-MsoPlainText">      <cell
id='1' cpus='2-3' memory='4194304' unit='KiB'/><span></span></p>

<p class="gmail-MsoPlainText">    </numa><span></span></p>

<p class="gmail-MsoPlainText">  </cpu><span></span></p>

<p class="gmail-MsoPlainText">...</p>

<p class="gmail-MsoPlainText"># virsh start vm1<span></span></p>

<p class="gmail-MsoPlainText">error: Failed to start domain vm1<span></span></p>

<p class="gmail-MsoPlainText">error: unsupported configuration: huge pages per NUMA node
are not supported with this QEMU<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText">Test 3: Only virtual numa nodes.<span></span></p>

<p class="gmail-MsoPlainText">------<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"><main type='kvm'><span></span></p>

<p class="gmail-MsoPlainText"> 
<name>vm1</name><span></span></p>

<p class="gmail-MsoPlainText"> 
<uuid>62077ba4-9d7a-4b81-8dfb-b0cd55693cc2</uuid><span></span></p>

<p class="gmail-MsoPlainText">  <memory
unit='KiB'>8388608</memory><span></span></p>

<p class="gmail-MsoPlainText">  <currentMemory
unit='KiB'>8388608</currentMemory><span></span></p>

<p class="gmail-MsoPlainText">  <memtune><span></span></p>

<p class="gmail-MsoPlainText">    <hard_limit
unit='KiB'>9437184</hard_limit><span></span></p>

<p class="gmail-MsoPlainText">  </memtune><span></span></p>

<p class="gmail-MsoPlainText">  <vcpu
placement='static'>4</vcpu><span></span></p>

<p class="gmail-MsoPlainText">  <cputune><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='0' cpuset='1'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='1' cpuset='2'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='2' cpuset='8'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='3' cpuset='9'/><span></span></p>

<p class="gmail-MsoPlainText">  </cputune><span></span></p>

<p class="gmail-MsoPlainText">  <os><span></span></p>

<p class="gmail-MsoPlainText">    <type
arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type><span></span></p>

<p class="gmail-MsoPlainText">    <boot
dev='hd'/><span></span></p>

<p class="gmail-MsoPlainText">  </os><span></span></p>

<p class="gmail-MsoPlainText">  <features><span></span></p>

<p class="gmail-MsoPlainText">    <acpi/><span></span></p>

<p class="gmail-MsoPlainText">    <apic/><span></span></p>

<p class="gmail-MsoPlainText">  </features><span></span></p>

<p class="gmail-MsoPlainText">  <cpu
mode='custom' match='exact'><span></span></p>

<p class="gmail-MsoPlainText">    <model
fallback='allow'>IvyBridge</model><span></span></p>

<p class="gmail-MsoPlainText">    <numa><span></span></p>

<p class="gmail-MsoPlainText">      <cell
id='0' cpus='0-1' memory='4194304' unit='KiB'/><span></span></p>

<p class="gmail-MsoPlainText">      <cell
id='1' cpus='2-3' memory='4194304' unit='KiB'/><span></span></p>

<p class="gmail-MsoPlainText">    </numa><span></span></p>

<p class="gmail-MsoPlainText">  </cpu><span></span></p>

<p class="gmail-MsoPlainText">...<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"># virsh start vm1<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"><Success and the guest OS shows the virtual NUMA nodes
etc.><span></span></p>

<p class="gmail-MsoPlainText"><br></p>

<p class="gmail-MsoPlainText">Test 4: Only 1G huge page backing per NUMA node<span></span></p>

<p class="gmail-MsoPlainText">------<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"><domain type='kvm'><span></span></p>

<p class="gmail-MsoPlainText"> 
<name>vm1</name><span></span></p>

<p class="gmail-MsoPlainText"> 
<uuid>62077ba4-9d7a-4b81-8dfb-b0cd55693cc2</uuid><span></span></p>

<p class="gmail-MsoPlainText">  <memory
unit='KiB'>8388608</memory><span></span></p>

<p class="gmail-MsoPlainText">  <currentMemory
unit='KiB'>8388608</currentMemory><span></span></p>

<p class="gmail-MsoPlainText">  <memtune><span></span></p>

<p class="gmail-MsoPlainText">    <hard_limit
unit='KiB'>9437184</hard_limit><span></span></p>

<p class="gmail-MsoPlainText">  </memtune><span></span></p>

<p class="gmail-MsoPlainText"> 
<memoryBacking><span></span></p>

<p class="gmail-MsoPlainText">   
<hugepages><span></span></p>

<p class="gmail-MsoPlainText">      <page
size='1048576' unit='KiB' nodeset='0'/><span></span></p>

<p class="gmail-MsoPlainText">      <page
size='1048576' unit='KiB' nodeset='1'/><span></span></p>

<p class="gmail-MsoPlainText">   
</hugepages><span></span></p>

<p class="gmail-MsoPlainText"> 
</memoryBacking><span></span></p>

<p class="gmail-MsoPlainText">  <vcpu placement='static'>4</vcpu><span></span></p>

<p class="gmail-MsoPlainText">  <cputune><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='0' cpuset='1'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='1' cpuset='2'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='2' cpuset='8'/><span></span></p>

<p class="gmail-MsoPlainText">    <vcpupin
vcpu='3' cpuset='9'/><span></span></p>

<p class="gmail-MsoPlainText">  </cputune><span></span></p>

<p class="gmail-MsoPlainText">  <os><span></span></p>

<p class="gmail-MsoPlainText">    <type
arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type><span></span></p>

<p class="gmail-MsoPlainText">    <boot
dev='hd'/><span></span></p>

<p class="gmail-MsoPlainText">  </os><span></span></p>

<p class="gmail-MsoPlainText">  <features><span></span></p>

<p class="gmail-MsoPlainText">    <acpi/><span></span></p>

<p class="gmail-MsoPlainText">    <apic/><span></span></p>

<p class="gmail-MsoPlainText">  </features><span></span></p>

<p class="gmail-MsoPlainText">  <cpu
mode='custom' match='exact'><span></span></p>

<p class="gmail-MsoPlainText">    <model
fallback='allow'>IvyBridge</model><span></span></p>

<p class="gmail-MsoPlainText">  </cpu><span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText">...<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"># virsh start vm1<span></span></p>

<p class="gmail-MsoPlainText"><span> </span></p>

<p class="gmail-MsoPlainText"><Success and the 1G pages on the host are consumed for
backing VM's memory><span></span></p></div>