Public bug reported:

Description
===========

The fix for bug https://bugs.launchpad.net/nova/+bug/1677621 enforced a
requirement for a migration object to be present in the call to
update_port_binding_for_instance() in order to do any mapping from old
PCI devices to new PCI devices when an instance is
migrated/resized/evacuated.

During an evacuation, a migration is created, but never passed down to
update_port_binding_for_instance().

This can cause an instance to be spawned on the new host with an
incorrect (PCI) port binding.

This can happen even with the proposed fix to related bug #1630698.

Steps to reproduce
==================

Two node setup
- Launch an instance with PCI-PT or SR-IOV port bindings
- Stop nova-compute on the destination host
- nova evacuate <instance>

Expected result
===============

The instance should migrate to a new host (provided resources are
available) with an updated port binding using PCI device(s) on the new
host.

Actual result
=============

Instance launched using port bindings from the old host.


Environment
===========

2. Which hypervisor did you use?
   libvirt

3. Which networking type did you use?
   - Affects neutron with openvswitch

** Affects: nova
     Importance: Undecided
     Assignee: Steven Webster (swebster-wr)
         Status: New

** Changed in: nova
     Assignee: (unassigned) => Steven Webster (swebster-wr)

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

Title:
  Evacuation fails for instances with PCI devices due to missing
  migration

Status in OpenStack Compute (nova):
  New

Bug description:
  Description
  ===========

  The fix for bug https://bugs.launchpad.net/nova/+bug/1677621 enforced
  a requirement for a migration object to be present in the call to
  update_port_binding_for_instance() in order to do any mapping from old
  PCI devices to new PCI devices when an instance is
  migrated/resized/evacuated.

  During an evacuation, a migration is created, but never passed down to
  update_port_binding_for_instance().

  This can cause an instance to be spawned on the new host with an
  incorrect (PCI) port binding.

  This can happen even with the proposed fix to related bug #1630698.

  Steps to reproduce
  ==================

  Two node setup
  - Launch an instance with PCI-PT or SR-IOV port bindings
  - Stop nova-compute on the destination host
  - nova evacuate <instance>

  Expected result
  ===============

  The instance should migrate to a new host (provided resources are
  available) with an updated port binding using PCI device(s) on the new
  host.

  Actual result
  =============

  Instance launched using port bindings from the old host.

  
  Environment
  ===========

  2. Which hypervisor did you use?
     libvirt

  3. Which networking type did you use?
     - Affects neutron with openvswitch

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

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to