Bug 846894

Summary: Error occurs when start domain with cpuset on numa machine
Product: Red Hat Enterprise Linux 6 Reporter: hongming <honzhang>
Component: libvirtAssignee: Peter Krempa <pkrempa>
Status: CLOSED DUPLICATE QA Contact: Virtualization Bugs <virt-bugs>
Severity: high Docs Contact:
Priority: medium    
Version: 6.4CC: acathrow, dallan, dyasny, dyuan, gsun, mzhan, rwu
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-08-27 12:15:21 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
NUMA topology none

Description hongming 2012-08-09 03:35:55 UTC
Created attachment 603158 [details]
NUMA topology

Description of problem:
If the domain's  xml includes cpuset attribute of  vcpu element , it is failed to start domain and the following errors occur.
error: Failed to start domain rhel6q
error: internal error cannot set CPU affinity on process 0: Invalid argument

But if remove the cpuset attribute from  vcpu element  of domain xml , it can successfully start. And it can't be reproduced machine without NUMA. Attached NUMA -topology .


Version-Release number of selected component (if applicable):
libvirt-0.10.0-0rc0.el6.x86_64
qemu-kvm-0.12.1.2-2.295.el6.x86_64
numad-0.5-4.20120522git.el6.x86_64
kernel-2.6.32-279.el6.x86_64


How reproducible:
100% 

Steps to Reproduce:
1. # virsh dumpxml rhel6q

<domain type='kvm'>
.....
<vcpu placement='static' cpuset='1-2,4,6'>10</vcpu>
......
</domain>


2. # virsh start rhel6q
error: Failed to start domain rhel6q
error: internal error cannot set CPU affinity on process 0: Invalid argument



3. Edit domain xml -  delete the cpuset attribute.
 # virsh edit rhel6q
Domain rhel6q XML configuration edited.

4.# virsh dumpxml rhel6q
<domain type='kvm'>
.....
<vcpu placement='static'>10</vcpu>
......
</domain>

# virsh start rhel6q
Domain rhel6q started


Actual results:
It is failed to start domain when domain's  xml includes cpuset attribute of  vcpu element


Expected results:
It can start successfully 

Additional info:

Comment 7 hongming 2012-08-24 09:25:29 UTC
Please ignore above Comment 6. It is right. The same error is not related with the bug.

Comment 8 Peter Krempa 2012-08-27 12:15:21 UTC
The problem you observed is most probably related to misconfigured cpuset cgroups that occurs when you disable (offline) and enable host processors. The cgroup setting is not restored when the processor is enabled again. I'm closing this as a dupe of 838070 that deals specifically with cgroup-related problems. 

If you reproduce this bug with working cpuset cgroup (/sys/fs/cgroup/cpuset/libvirt/cpuset.cpus contains all processors) please re-open this bug.

*** This bug has been marked as a duplicate of bug 838070 ***