Bug 1520870

Summary: huge pages per NUMA node are not supported with this QEMU
Product: Red Hat Enterprise Linux 7 Reporter: Miguel Martin <mmartinv>
Component: doc-Virtualization_Tuning_and_Optimization_GuideAssignee: Jiri Herrmann <jherrman>
Status: CLOSED CURRENTRELEASE QA Contact: haoliu <haoliu>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 7.4CC: mmartinv, rhel-docs
Target Milestone: rcKeywords: Documentation
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-04-16 11:53:22 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:

Description Miguel Martin 2017-12-05 10:44:31 UTC
Document URL: 
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/virtualization_tuning_and_optimization_guide/sect-virtualization_tuning_optimization_guide-numa-numa_and_libvirt#sect-Virtualization_Tuning_Optimization_Guide-NUMA-Guest_NUMA_multinode-hugepages

Section Number and Name: 
9.3.10. Assigning Host Huge Pages to Multiple Guest NUMA Nodes

Describe the issue: 
Maybe I am wrong but I think this is incorrect. Assigning Host Huge Pages to Multiple Guest NUMA Nodes is only supported with 'qemu-kvm-rhev' package provided by OSP or RHV subscriptions, not with 'qemu-kvm' package shipped with standard RHEL subscriptions.

If you try a similar setup just as described in section 9.3.10 you will get the following error when trying to start the virtual machine:
~~~
error: Failed to start domain rhel74
error: unsupported configuration: huge pages per NUMA node are not supported with this QEMU
~~~  

Setting up guest NUMA topology as described in section 9.3.9 and using huge pages are supported when used separately, but not when using them together as stated in section 9.3.10.

Suggestions for improvement:


Additional information:
 
For the host huge pages configuration, I followed the steps in section "Procedure 8.3. Allocating 1 GB huge pages at runtime" in the same document.

For the vm the configurations used for this test were:
~~~
...
   <numa>
      <cell id='0' cpus='0-1' memory='2048000' unit='KiB'/>
      <cell id='1' cpus='2-3' memory='2048000' unit='KiB'/>
    </numa>
...

  <memoryBacking>
    <hugepages>
      <page size='1048576' unit='KiB' nodeset='0'/>
      <page size='2048' unit='KiB' nodeset='1'/>
    </hugepages>
  </memoryBacking>
...
~~~ 

And
~~~
...
   <numa>
      <cell id='0' cpus='0-1' memory='2048000' unit='KiB'/>
      <cell id='1' cpus='2-3' memory='2048000' unit='KiB'/>
    </numa>
...

  <memoryBacking>
    <hugepages/>
  </memoryBacking>
...
~~~

Both failed with the same error:
~~~
error: Failed to start domain rhel74
error: unsupported configuration: huge pages per NUMA node are not supported with this QEMU
~~~

When trying to use guest numa topology or huge pages separately with the corresponding configuration fragment it works.

Comment 9 Jiri Herrmann 2018-04-13 17:05:33 UTC
This has gone live with RHEL 7.5 GA publication, and I will therefore be closing this BZ:

https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/virtualization_tuning_and_optimization_guide/sect-virtualization_tuning_optimization_guide-numa-numa_and_libvirt#sect-Virtualization_Tuning_Optimization_Guide-NUMA-Guest_NUMA_Topology

Feel free to reopen if any additions or corrections to the current content are needed.