← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1439262] [NEW] Small pages memory are not take into account when not explicitly requested

 

Public bug reported:

Guests using small pages (as default) on compute node are not take into
account when calculating available small pages memory [1] - Consequence
when booting instance with an explicitly small pages request the compute
of available resources is corrupted.

In order to fix the issue two solutions are able.

1/
Associate to every guest a NUMA topology and set the default page_size to MEMPAGES_SMALL when nothing has been requested by user.  ** This also implies when using libvirt the default option of virt-type should be KVM **

A small couple of change are needed in hardware.py:
- make the method 'numa_get_constraints' to return NUMATopology in all cases.
- make the method ' _numa_get_pagesize_constraints' to return MEMPAGES_SMALL instead of None when nothing is requested.

2/
Disallow to request a memory page size small, means remove all of the code which handle that case since the information reported to the host are not correctly updated and let the default behavior handle that case.

[1]
http://git.openstack.org/cgit/openstack/nova/tree/nova/virt/hardware.py#n1087

** Affects: nova
     Importance: Medium
     Assignee: sahid (sahid-ferdjaoui)
         Status: New

-- 
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/1439262

Title:
  Small pages memory are not take into account when not explicitly
  requested

Status in OpenStack Compute (Nova):
  New

Bug description:
  Guests using small pages (as default) on compute node are not take
  into account when calculating available small pages memory [1] -
  Consequence when booting instance with an explicitly small pages
  request the compute of available resources is corrupted.

  In order to fix the issue two solutions are able.

  1/
  Associate to every guest a NUMA topology and set the default page_size to MEMPAGES_SMALL when nothing has been requested by user.  ** This also implies when using libvirt the default option of virt-type should be KVM **

  A small couple of change are needed in hardware.py:
  - make the method 'numa_get_constraints' to return NUMATopology in all cases.
  - make the method ' _numa_get_pagesize_constraints' to return MEMPAGES_SMALL instead of None when nothing is requested.

  2/
  Disallow to request a memory page size small, means remove all of the code which handle that case since the information reported to the host are not correctly updated and let the default behavior handle that case.

  [1]
  http://git.openstack.org/cgit/openstack/nova/tree/nova/virt/hardware.py#n1087

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


Follow ups

References