← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1528325] [NEW] instance with explicit "small" pages treated different from implicit

 

Public bug reported:

In numa_get_constraints() we call

pagesize = _numa_get_pagesize_constraints(flavor, image_meta)

then later we have

if nodes or pagesize:
    <skip>
    [setattr(c, 'pagesize', pagesize) for c in numa_topology.cells]


This ends up treating an instance which doesn't specify pagesize (which results in 4K pages) differently from an instance that explicitly specifies 4K pages.  In the first case the instance may not have a numa topology specified, while in the second case it does.

In _get_guest_numa_config() we check whether the guest has a numa
topology, and if it does we restrict it to a single NUMA node rather
than letting it float across the whole host.  This unexpectedly results
in different CPU and memory affinity depending on whether an instance
implicitly assumes 4K pages or explicitly specifies them.

** Affects: nova
     Importance: Undecided
         Status: New


** Tags: compute numa

** Summary changed:

- explicit "small" pages treated different from implicit
+ instance with explicit "small" pages treated different from implicit

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

Title:
  instance with explicit "small" pages treated different from implicit

Status in OpenStack Compute (nova):
  New

Bug description:
  In numa_get_constraints() we call

  pagesize = _numa_get_pagesize_constraints(flavor, image_meta)

  then later we have

  if nodes or pagesize:
      <skip>
      [setattr(c, 'pagesize', pagesize) for c in numa_topology.cells]

  
  This ends up treating an instance which doesn't specify pagesize (which results in 4K pages) differently from an instance that explicitly specifies 4K pages.  In the first case the instance may not have a numa topology specified, while in the second case it does.

  In _get_guest_numa_config() we check whether the guest has a numa
  topology, and if it does we restrict it to a single NUMA node rather
  than letting it float across the whole host.  This unexpectedly
  results in different CPU and memory affinity depending on whether an
  instance implicitly assumes 4K pages or explicitly specifies them.

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


Follow ups