Bug 1392367 - Incorrect host cpu is given to emulator threads when cpu_realtime_mask flag is set.
Summary: Incorrect host cpu is given to emulator threads when cpu_realtime_mask flag i...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-nova
Version: 10.0 (Newton)
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: rc
: 10.0 (Newton)
Assignee: Sahid Ferdjaoui
QA Contact: Prasanth Anbalagan
URL:
Whiteboard:
: 1392019 (view as bug list)
Depends On: 1357461 1391927
Blocks: 1342229 1392019
TreeView+ depends on / blocked
 
Reported: 2016-11-07 10:21 UTC by Sahid Ferdjaoui
Modified: 2019-09-09 13:15 UTC (History)
14 users (show)

Fixed In Version: openstack-nova-14.0.1-6.el7ost
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1391927
Environment:
Last Closed: 2016-12-14 16:29:53 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
OpenStack gerrit 356383 0 None None None 2016-11-07 10:21:48 UTC
Red Hat Product Errata RHEA-2016:2948 0 normal SHIPPED_LIVE Red Hat OpenStack Platform 10 enhancement update 2016-12-14 19:55:27 UTC

Comment 2 Sahid Ferdjaoui 2016-11-09 15:57:12 UTC
*** Bug 1392019 has been marked as a duplicate of this bug. ***

Comment 3 Prasanth Anbalagan 2016-11-16 17:39:51 UTC
Verified as follows - emulatorpin cpuset id is set correctly.

# yum list installed | grep openstack-nova
openstack-nova-api.noarch             1:14.0.2-5.el7ost     @rhelosp-10.0-puddle
openstack-nova-cert.noarch            1:14.0.2-5.el7ost     @rhelosp-10.0-puddle
openstack-nova-common.noarch          1:14.0.2-5.el7ost     @rhelosp-10.0-puddle
openstack-nova-compute.noarch         1:14.0.2-5.el7ost     @rhelosp-10.0-puddle
openstack-nova-conductor.noarch       1:14.0.2-5.el7ost     @rhelosp-10.0-puddle
openstack-nova-console.noarch         1:14.0.2-5.el7ost     @rhelosp-10.0-puddle
openstack-nova-novncproxy.noarch      1:14.0.2-5.el7ost     @rhelosp-10.0-puddle
openstack-nova-scheduler.noarch       1:14.0.2-5.el7ost     @rhelosp-10.0-puddle


# numactl -H
available: 2 nodes (0-1)
node 0 cpus: 0 1 2 3 4 5 12 13 14 15 16 17
node 0 size: 65425 MB
node 0 free: 45697 MB
node 1 cpus: 6 7 8 9 10 11 18 19 20 21 22 23
node 1 size: 65536 MB
node 1 free: 63294 MB
node distances:
node   0   1 
  0:  10  21 
  1:  21  10 

# nova flavor-show 100
+----------------------------+----------------------------------------------------------------------------------------+
| Property                   | Value                                                                                  |
+----------------------------+----------------------------------------------------------------------------------------+
| OS-FLV-DISABLED:disabled   | False                                                                                  |
| OS-FLV-EXT-DATA:ephemeral  | 0                                                                                      |
| disk                       | 5                                                                                      |
| extra_specs                | {"hw:cpu_realtime_mask": "^0", "hw:cpu_policy": "dedicated", "hw:cpu_realtime": "yes"} |
| id                         | 100                                                                                    |
| name                       | m1.pinned                                                                              |
| os-flavor-access:is_public | True                                                                                   |
| ram                        | 512                                                                                    |
| rxtx_factor                | 1.0                                                                                    |
| swap                       |                                                                                        |
| vcpus                      | 2                                                                                      |
+----------------------------+----------------------------------------------------------------------------------------+

# virsh vcpupin 2
VCPU: CPU Affinity
----------------------------------
   0: 17
   1: 5

# virsh list --all
 Id    Name                           State
----------------------------------------------------
 1     instance-00000001              running
 2     instance-00000002              running


<cputune>
  <shares>2048</shares>
  <vcpupin vcpu='0' cpuset='17'/>
  <vcpupin vcpu='1' cpuset='5'/>
  <emulatorpin cpuset='17'/>
  <vcpusched vcpus='1' scheduler='fifo' priority='1'/>
</cputune>

# virsh dumpxml 2
<domain type='kvm' id='2'>
  <name>instance-00000002</name>
  <uuid>a06e0e7b-7114-426d-8e3d-415d49ae28d9</uuid>
  <metadata>
    <nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0">
      <nova:package version="14.0.2-5.el7ost"/>
      <nova:name>vm2</nova:name>
      <nova:creationTime>2016-11-16 16:39:22</nova:creationTime>
      <nova:flavor name="m1.pinned">
        <nova:memory>512</nova:memory>
        <nova:disk>5</nova:disk>
        <nova:swap>0</nova:swap>
        <nova:ephemeral>0</nova:ephemeral>
        <nova:vcpus>2</nova:vcpus>
      </nova:flavor>
      <nova:owner>
        <nova:user uuid="83e2c8b5795448df87f6a95e65fb3d4c">admin</nova:user>
        <nova:project uuid="941f4e77be0947fab6795e97dcc84675">admin</nova:project>
      </nova:owner>
      <nova:root type="image" uuid="c6abd434-4f03-40aa-964b-9d9b901cfd18"/>
    </nova:instance>
  </metadata>
  <memory unit='KiB'>524288</memory>
  <currentMemory unit='KiB'>524288</currentMemory>
  <memoryBacking>
    <nosharepages/>
    <locked/>
  </memoryBacking>
  <vcpu placement='static'>2</vcpu>
  <cputune>
    <shares>2048</shares>
    <vcpupin vcpu='0' cpuset='17'/>
    <vcpupin vcpu='1' cpuset='5'/>
    <emulatorpin cpuset='17'/>
    <vcpusched vcpus='1' scheduler='fifo' priority='1'/>
  </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'>Red Hat</entry>
      <entry name='product'>OpenStack Compute</entry>
      <entry name='version'>14.0.2-5.el7ost</entry>
      <entry name='serial'>b053077c-a934-4a14-8f39-ecb45789f377</entry>
      <entry name='uuid'>a06e0e7b-7114-426d-8e3d-415d49ae28d9</entry>
      <entry name='family'>Virtual Machine</entry>
    </system>
  </sysinfo>
  <os>
    <type arch='x86_64' machine='pc-i440fx-rhel7.3.0'>hvm</type>
    <boot dev='hd'/>
    <smbios mode='sysinfo'/>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-model'>
    <model fallback='allow'/>
    <topology sockets='1' cores='1' threads='2'/>
    <numa>
      <cell id='0' cpus='0-1' 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/libexec/qemu-kvm</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none'/>
      <source file='/var/lib/nova/instances/a06e0e7b-7114-426d-8e3d-415d49ae28d9/disk'/>
      <backingStore type='file' index='1'>
        <format type='raw'/>
        <source file='/var/lib/nova/instances/_base/28e399c9fcd16e3261f36a1c0326d73889ba1f21'/>
        <backingStore/>
      </backingStore>
      <target dev='vda' bus='virtio'/>
      <alias name='virtio-disk0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </disk>
    <controller type='usb' index='0'>
      <alias name='usb'/>
      <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>
    <interface type='bridge'>
      <mac address='fa:16:3e:3d:57:50'/>
      <source bridge='qbr4be05394-59'/>
      <target dev='tap4be05394-59'/>
      <model type='virtio'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
    <serial type='file'>
      <source path='/var/lib/nova/instances/a06e0e7b-7114-426d-8e3d-415d49ae28d9/console.log'/>
      <target port='0'/>
      <alias name='serial0'/>
    </serial>
    <serial type='pty'>
      <source path='/dev/pts/2'/>
      <target port='1'/>
      <alias name='serial1'/>
    </serial>
    <console type='file'>
      <source path='/var/lib/nova/instances/a06e0e7b-7114-426d-8e3d-415d49ae28d9/console.log'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <input type='tablet' bus='usb'>
      <alias name='input0'/>
      <address type='usb' bus='0' port='1'/>
    </input>
    <input type='mouse' bus='ps2'>
      <alias name='input1'/>
    </input>
    <input type='keyboard' bus='ps2'>
      <alias name='input2'/>
    </input>
    <graphics type='vnc' port='5901' autoport='yes' listen='0.0.0.0' keymap='en-us'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <video>
      <model type='cirrus' vram='16384' heads='1' primary='yes'/>
      <alias name='video0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <stats period='10'/>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
  <seclabel type='dynamic' model='selinux' relabel='yes'>
    <label>system_u:system_r:svirt_t:s0:c221,c738</label>
    <imagelabel>system_u:object_r:svirt_image_t:s0:c221,c738</imagelabel>
  </seclabel>
  <seclabel type='dynamic' model='dac' relabel='yes'>
    <label>+107:+107</label>
    <imagelabel>+107:+107</imagelabel>
  </seclabel>
</domain>

Comment 6 errata-xmlrpc 2016-12-14 16:29:53 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHEA-2016-2948.html


Note You need to log in before you can comment on or make changes to this bug.