Public bug reported: Booting a Nova instance successfully with hw:numa_nodes=0, with a Nova guest XML like that[*]. This bug came out of this RDO bug -- https://bugzilla.redhat.com/show_bug.cgi?id=1154152.
But, talking with Daniel Berrnage and Nikola Dipanov on IRC, they suggest we should default to 1 node if nothing is specified: . . . <danpb> hmm, i'm not convinced we should allow nodes=0 at all <danpb> we should default 1 node if nothing is specified <danpb> We should refuse a vlaue of 0, in case we wish to make use of that as a special value at a later date <danpb> we don't want people relying on numa_nodes=0 accidentally working for them now <nikola> danpb, correct . . . Simple test ------------- NUMA setup instructions here: https://review.openstack.org/#/c/131818/1/doc/source/devref/testing /libvirt-numa.rst $ nova flavor-key m1.tiny set hw:numa_nodes=0 $ nova flavor-show m1.tiny +----------------------------+------------------------+ | Property | Value | +----------------------------+------------------------+ | OS-FLV-DISABLED:disabled | False | | OS-FLV-EXT-DATA:ephemeral | 0 | | disk | 1 | | extra_specs | {"hw:numa_nodes": "0"} | | id | 1 | | name | m1.tiny | | os-flavor-access:is_public | True | | ram | 512 | | rxtx_factor | 1.0 | | swap | | | vcpus | 1 | +----------------------------+------------------------+ $ nova boot --image cirros-0.3.1-x86_64-disk --flavor m1.tiny cirrvm4 [*] Nova guest XML with an instance booted with hw:numa_nodes=0 ----------------------------------------------------------------------------- <domain type='kvm' id='3'> <name>instance-00000004</name> <uuid>593f8388-ac9c-4673-b1c7-aa49b1ce83f0</uuid> <metadata> <nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0"> <nova:package version="2015.1"/> <nova:name>cirrvm4</nova:name> <nova:creationTime>2014-12-15 14:41:43</nova:creationTime> <nova:flavor name="m1.tiny"> <nova:memory>512</nova:memory> <nova:disk>1</nova:disk> <nova:swap>0</nova:swap> <nova:ephemeral>0</nova:ephemeral> <nova:vcpus>1</nova:vcpus> </nova:flavor> <nova:owner> <nova:user uuid="0d5623bdae83445ba3a6209ea849fffe">admin</nova:user> <nova:project uuid="f9ecf22769cf4ab98543f5ade1454664">admin</nova:project> </nova:owner> <nova:root type="image" uuid="5bc9a92b-6cda-4916-9bb0-dd9751880cde"/> </nova:instance> </metadata> <memory unit='KiB'>524288</memory> <currentMemory unit='KiB'>524288</currentMemory> <vcpu placement='static'>1</vcpu> <cputune> <vcpupin vcpu='0' cpuset='0-3'/> <emulatorpin cpuset='0-3'/> </cputune> <numatune> <memory mode='strict' nodeset='0'/> <memnode cellid='0' mode='strict' nodeset='0'/> </numatune> <resource> <partition>/machine</partition> </resource> <sysinfo type='smbios'> <system> <entry name='manufacturer'>OpenStack Foundation</entry> <entry name='product'>OpenStack Nova</entry> <entry name='version'>2015.1</entry> <entry name='serial'>bf6b5391-2390-df4f-b3dc-aa80d05468bb</entry> <entry name='uuid'>593f8388-ac9c-4673-b1c7-aa49b1ce83f0</entry> </system> </sysinfo> <os> <type arch='x86_64' machine='pc-i440fx-2.2'>hvm</type> <boot dev='hd'/> <smbios mode='sysinfo'/> </os> <features> <acpi/> <apic/> </features> <cpu> <topology sockets='1' cores='1' threads='1'/> <numa> <cell id='0' cpus='0' memory='524288' unit='KiB'/> </numa> </cpu> <clock offset='utc'> <timer name='pit' tickpolicy='delay'/> <timer name='rtc' tickpolicy='catchup'/> <timer name='hpet' present='no'/> </clock> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/usr/bin/qemu-kvm</emulator> <disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='none'/> <source file='/home/kashyapc/src/cloud/data/nova/instances/593f8388-ac9c-4673-b1c7-aa49b1ce83f0/disk'/> <backingStore type='file' index='1'> <format type='raw'/> <source file='/home/kashyapc/src/cloud/data/nova/instances/_base/03a663c2a1c649fe0854f01c82c0ddb3871cf691'/> <backingStore/> </backingStore> <target dev='vda' bus='virtio'/> <alias name='virtio-disk0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw' cache='none'/> <source file='/home/kashyapc/src/cloud/data/nova/instances/593f8388-ac9c-4673-b1c7-aa49b1ce83f0/disk.config'/> <backingStore/> <target dev='hdd' bus='ide'/> <readonly/> <alias name='ide0-1-1'/> <address type='drive' controller='0' bus='1' target='0' unit='1'/> </disk> <controller type='usb' index='0'> <alias name='usb0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <controller type='pci' index='0' model='pci-root'> <alias name='pci.0'/> </controller> <controller type='ide' index='0'> <alias name='ide0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <interface type='bridge'> <mac address='fa:16:3e:79:6c:b8'/> <source bridge='qbr7584d9fb-e1'/> <target dev='tap7584d9fb-e1'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </interface> <serial type='file'> <source path='/home/kashyapc/src/cloud/data/nova/instances/593f8388-ac9c-4673-b1c7-aa49b1ce83f0/console.log'/> <target port='0'/> <alias name='serial0'/> </serial> <serial type='pty'> <source path='/dev/pts/19'/> <target port='1'/> <alias name='serial1'/> </serial> <console type='file'> <source path='/home/kashyapc/src/cloud/data/nova/instances/593f8388-ac9c-4673-b1c7-aa49b1ce83f0/console.log'/> <target type='serial' port='0'/> <alias name='serial0'/> </console> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> <stats period='10'/> </memballoon> </devices> <seclabel type='dynamic' model='selinux' relabel='yes'> <label>system_u:system_r:svirt_t:s0:c79,c658</label> <imagelabel>system_u:object_r:svirt_image_t:s0:c79,c658</imagelabel> </seclabel> </domain> ----------------------------------------------------------------------------- ** Affects: nova Importance: Undecided Status: New -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1402709 Title: Report an error when booting an instance with a flavor which has NUMA nodes is set to 0 (hw:numa_nodes=0) Status in OpenStack Compute (Nova): New Bug description: Booting a Nova instance successfully with hw:numa_nodes=0, with a Nova guest XML like that[*]. This bug came out of this RDO bug -- https://bugzilla.redhat.com/show_bug.cgi?id=1154152. But, talking with Daniel Berrnage and Nikola Dipanov on IRC, they suggest we should default to 1 node if nothing is specified: . . . <danpb> hmm, i'm not convinced we should allow nodes=0 at all <danpb> we should default 1 node if nothing is specified <danpb> We should refuse a vlaue of 0, in case we wish to make use of that as a special value at a later date <danpb> we don't want people relying on numa_nodes=0 accidentally working for them now <nikola> danpb, correct . . . Simple test ------------- NUMA setup instructions here: https://review.openstack.org/#/c/131818/1/doc/source/devref/testing /libvirt-numa.rst $ nova flavor-key m1.tiny set hw:numa_nodes=0 $ nova flavor-show m1.tiny +----------------------------+------------------------+ | Property | Value | +----------------------------+------------------------+ | OS-FLV-DISABLED:disabled | False | | OS-FLV-EXT-DATA:ephemeral | 0 | | disk | 1 | | extra_specs | {"hw:numa_nodes": "0"} | | id | 1 | | name | m1.tiny | | os-flavor-access:is_public | True | | ram | 512 | | rxtx_factor | 1.0 | | swap | | | vcpus | 1 | +----------------------------+------------------------+ $ nova boot --image cirros-0.3.1-x86_64-disk --flavor m1.tiny cirrvm4 [*] Nova guest XML with an instance booted with hw:numa_nodes=0 ----------------------------------------------------------------------------- <domain type='kvm' id='3'> <name>instance-00000004</name> <uuid>593f8388-ac9c-4673-b1c7-aa49b1ce83f0</uuid> <metadata> <nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0"> <nova:package version="2015.1"/> <nova:name>cirrvm4</nova:name> <nova:creationTime>2014-12-15 14:41:43</nova:creationTime> <nova:flavor name="m1.tiny"> <nova:memory>512</nova:memory> <nova:disk>1</nova:disk> <nova:swap>0</nova:swap> <nova:ephemeral>0</nova:ephemeral> <nova:vcpus>1</nova:vcpus> </nova:flavor> <nova:owner> <nova:user uuid="0d5623bdae83445ba3a6209ea849fffe">admin</nova:user> <nova:project uuid="f9ecf22769cf4ab98543f5ade1454664">admin</nova:project> </nova:owner> <nova:root type="image" uuid="5bc9a92b-6cda-4916-9bb0-dd9751880cde"/> </nova:instance> </metadata> <memory unit='KiB'>524288</memory> <currentMemory unit='KiB'>524288</currentMemory> <vcpu placement='static'>1</vcpu> <cputune> <vcpupin vcpu='0' cpuset='0-3'/> <emulatorpin cpuset='0-3'/> </cputune> <numatune> <memory mode='strict' nodeset='0'/> <memnode cellid='0' mode='strict' nodeset='0'/> </numatune> <resource> <partition>/machine</partition> </resource> <sysinfo type='smbios'> <system> <entry name='manufacturer'>OpenStack Foundation</entry> <entry name='product'>OpenStack Nova</entry> <entry name='version'>2015.1</entry> <entry name='serial'>bf6b5391-2390-df4f-b3dc-aa80d05468bb</entry> <entry name='uuid'>593f8388-ac9c-4673-b1c7-aa49b1ce83f0</entry> </system> </sysinfo> <os> <type arch='x86_64' machine='pc-i440fx-2.2'>hvm</type> <boot dev='hd'/> <smbios mode='sysinfo'/> </os> <features> <acpi/> <apic/> </features> <cpu> <topology sockets='1' cores='1' threads='1'/> <numa> <cell id='0' cpus='0' memory='524288' unit='KiB'/> </numa> </cpu> <clock offset='utc'> <timer name='pit' tickpolicy='delay'/> <timer name='rtc' tickpolicy='catchup'/> <timer name='hpet' present='no'/> </clock> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/usr/bin/qemu-kvm</emulator> <disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='none'/> <source file='/home/kashyapc/src/cloud/data/nova/instances/593f8388-ac9c-4673-b1c7-aa49b1ce83f0/disk'/> <backingStore type='file' index='1'> <format type='raw'/> <source file='/home/kashyapc/src/cloud/data/nova/instances/_base/03a663c2a1c649fe0854f01c82c0ddb3871cf691'/> <backingStore/> </backingStore> <target dev='vda' bus='virtio'/> <alias name='virtio-disk0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw' cache='none'/> <source file='/home/kashyapc/src/cloud/data/nova/instances/593f8388-ac9c-4673-b1c7-aa49b1ce83f0/disk.config'/> <backingStore/> <target dev='hdd' bus='ide'/> <readonly/> <alias name='ide0-1-1'/> <address type='drive' controller='0' bus='1' target='0' unit='1'/> </disk> <controller type='usb' index='0'> <alias name='usb0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/> </controller> <controller type='pci' index='0' model='pci-root'> <alias name='pci.0'/> </controller> <controller type='ide' index='0'> <alias name='ide0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/> </controller> <interface type='bridge'> <mac address='fa:16:3e:79:6c:b8'/> <source bridge='qbr7584d9fb-e1'/> <target dev='tap7584d9fb-e1'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </interface> <serial type='file'> <source path='/home/kashyapc/src/cloud/data/nova/instances/593f8388-ac9c-4673-b1c7-aa49b1ce83f0/console.log'/> <target port='0'/> <alias name='serial0'/> </serial> <serial type='pty'> <source path='/dev/pts/19'/> <target port='1'/> <alias name='serial1'/> </serial> <console type='file'> <source path='/home/kashyapc/src/cloud/data/nova/instances/593f8388-ac9c-4673-b1c7-aa49b1ce83f0/console.log'/> <target type='serial' port='0'/> <alias name='serial0'/> </console> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/> <stats period='10'/> </memballoon> </devices> <seclabel type='dynamic' model='selinux' relabel='yes'> <label>system_u:system_r:svirt_t:s0:c79,c658</label> <imagelabel>system_u:object_r:svirt_image_t:s0:c79,c658</imagelabel> </seclabel> </domain> ----------------------------------------------------------------------------- To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1402709/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp