Bug 714860

Summary: RFE: Support multiple cell numbers selection for NUMA
Product: Red Hat Enterprise Linux 6 Reporter: Min Zhan <mzhan>
Component: virt-managerAssignee: Cole Robinson <crobinso>
Status: CLOSED NOTABUG QA Contact: Virtualization Bugs <virt-bugs>
Severity: medium Docs Contact:
Priority: high    
Version: 6.2CC: dyuan, mzhan, rwu
Target Milestone: rcKeywords: FutureFeature
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-07-21 00:15:58 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Min Zhan 2011-06-21 06:24:03 UTC
Description of problem:
For host NUMA there are 4 cell id configuration. Launch virt-manager, Click Generate from host NUMA configuration button, found it only display the vcpu in cell id equal 0.

Version-Release number of selected component (if applicable):
libvirt-0.9.1-1.el6.x86_64
virt-manager-0.8.6-4.el6.noarch

How reproducible:
Always

Steps to Reproduce:
1. # virsh capabilities
...
    <topology>
      <cells num='4'>
        <cell id='0'>
          <cpus num='16'>
            <cpu id='0'/>
            <cpu id='4'/>
            <cpu id='8'/>
            <cpu id='12'/>
            <cpu id='16'/>
            <cpu id='20'/>
            <cpu id='24'/>
            <cpu id='28'/>
            <cpu id='32'/>
            <cpu id='36'/>
            <cpu id='40'/>
            <cpu id='44'/>
            <cpu id='48'/>
            <cpu id='52'/>
            <cpu id='56'/>
            <cpu id='60'/>
          </cpus>
        </cell>
        <cell id='1'>
          <cpus num='16'>
            <cpu id='1'/>
            <cpu id='5'/>
            <cpu id='9'/>
            <cpu id='13'/>
            <cpu id='17'/>
            <cpu id='21'/>
            <cpu id='25'/>
            <cpu id='29'/>
            <cpu id='33'/>
            <cpu id='37'/>
            <cpu id='41'/>
            <cpu id='45'/>
            <cpu id='49'/>
            <cpu id='53'/>
            <cpu id='57'/>
            <cpu id='61'/>
          </cpus>
        </cell>
        <cell id='2'>
          <cpus num='16'>
            <cpu id='2'/>
            <cpu id='6'/>
            <cpu id='10'/>
            <cpu id='14'/>
            <cpu id='18'/>
            <cpu id='22'/>
            <cpu id='26'/>
            <cpu id='30'/>
            <cpu id='34'/>
            <cpu id='38'/>
            <cpu id='42'/>
            <cpu id='46'/>
            <cpu id='50'/>
            <cpu id='54'/>
            <cpu id='58'/>
            <cpu id='62'/>
          </cpus>
        </cell>
        <cell id='3'>
          <cpus num='16'>
            <cpu id='3'/>
            <cpu id='7'/>
            <cpu id='11'/>
            <cpu id='15'/>
            <cpu id='19'/>
            <cpu id='23'/>
            <cpu id='27'/>
            <cpu id='31'/>
            <cpu id='35'/>
            <cpu id='39'/>
            <cpu id='43'/>
            <cpu id='47'/>
            <cpu id='51'/>
            <cpu id='55'/>
            <cpu id='59'/>
            <cpu id='63'/>
          </cpus>
        </cell>
      </cells>
    </topology>
...
2. Select a shutdown guest in virt-manager, Click Generate from host NUMA configuration button, click Apply button
3. Then the values will display in Default pinning textbox. Check these values are right or not
  
Actual results:
It display as 0,4,8,12,16,20,24,28,32,36,40,44,48,52,56,60. Which are all in cell id=0

Expected results:
Since this button is about host NUMA configuration, and from the host it has 4 cell id. So I think it should support user to select the cell id (1 or more) or display all the cpu id in all cell id if can not select cell.

Additional info:

Comment 1 Cole Robinson 2011-07-21 00:15:58 UTC
What that 'configure from numa' button does is try to find the numa cell who's available memory amount is closest to the memory requested by the VM. it then builds a cpuset str from all the cpus associated with that cell. it is intended to not generate a cpuset str across multiple cells. so what you are seeing is expected. Closing as NOTABUG, please reopen if I've misunderstood