Description of problem: When using the cpu_realtime and cpu_realtim_mask flag to create new instance, the 'cpuset' of 'emulatorpin' option is using the id of vcpu which is incorrect. The id of host cpu should be used here. e.g. <cputune> <vcpupin vcpu='0' cpuset='2'/> <vcpupin vcpu='1' cpuset='3'/> <emulatorpin cpuset='0'/> ### the cpuset should be '2' here, when cpu_realtime_mask=^0. <vcpusched vcpus='1' scheduler='fifo' priority='1'/> </cputune> Version-Release number of selected component (if applicable): 1:12.0.2-5.el7ost How reproducible: Boot new instance with cpu_realtime_mask flavor. Steps to Reproduce: 1. Create RT flavor nova flavor-create m1.small.performance 6 2048 20 2 nova flavor-key m1.small.performance set hw:cpu_realtime=yes nova flavor-key m1.small.performance set hw:cpu_realtime_mask=^0 nova flavor-key m1.small.performance set hw:cpu_policy=dedicated 2. Boot a instance with this flavor 3. Check the xml of the new instance Actual results: <cputune> <vcpupin vcpu='0' cpuset='2'/> <vcpupin vcpu='1' cpuset='3'/> <emulatorpin cpuset='0'/> <vcpusched vcpus='1' scheduler='fifo' priority='1'/> </cputune> Expected results: <cputune> <vcpupin vcpu='0' cpuset='2'/> <vcpupin vcpu='1' cpuset='3'/> <emulatorpin cpuset='2'/> <vcpusched vcpus='1' scheduler='fifo' priority='1'/> </cputune> Additional info:
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/RHSA-2016-2991.html