← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1422775] Re: nova libvirt driver needs to check qemu support for NUMA & hugepages

 

** Changed in: nova
       Status: Fix Committed => Fix Released

** Changed in: nova
    Milestone: None => liberty-1

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1422775

Title:
  nova libvirt driver needs to check qemu support for NUMA & hugepages

Status in OpenStack Compute (Nova):
  Fix Released

Bug description:
  In the trunk (kilo) nova libvirt code there are a numberr of places
  where we assume that qemu can provide NUMA-related functionality that
  was only introduced in a very recent version (2.1).  If we try to use
  this code with older qemu it triggers an exception and fails to boot
  the instance.

  In some cases, we can get partial NUMA support by removing some of the
  more advanced functionality (per-numa-node pinning, per-numa-node
  hugepages).  This would arguably be the best solution.

  At the very least, we should introduce a QEMU version check and fail
  cleanly with a proper error code rather than with cryptic errors that
  are complicated to resolve.

  Known affected areas:

  virt.libvirt.config.LibvirtConfigGuestMemoryBacking.format_dom()
  --the "page" subelement of the "hugepages" element is not supported by earlier qemu versions

  virt.libvirt.config.LibvirtConfigGuestNUMATune.format_dom()
  --the "memnode" subelement of the "numatune" element is not supported by earlier qemu versions

  Commenting out the code that configures these elements allows NUMA to
  work (with somewhat reduced functionality) on an older qemu version,
  or a newer one without NUMA support (like Ubuntu 14.10 at the time of
  writing this).

  I think we should add a qemu version test against 2.1 and use that to
  determine whether or not to support the more advanced NUMA
  capabilities.  If Ubuntu doesn't fix their qemu in 14.10 then we might
  even want to add some kind of runtime capabilities test to check
  whether qemu was built with numa support.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1422775/+subscriptions


References