Comment 6 for bug 1677621

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (stable/ocata)

Reviewed: https://review.openstack.org/459840
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=f281c18ba9aea1b2e8a36d5ae91a7acc5324ac5e
Submitter: Jenkins
Branch: stable/ocata

commit f281c18ba9aea1b2e8a36d5ae91a7acc5324ac5e
Author: Steven Webster <email address hidden>
Date: Mon Mar 27 12:18:23 2017 -0400

    Fix port update exception when unshelving an instance with PCI devices

    It is possible that _update_port_binding_for_instance() is called
    without a migration object, such as when a user unshelves an instance.

    If the instance has a port(s) with a PCI device binding, the current
    logic extracts a pci mapping from old to new devices from the migration
    object and migration context. If a 'new' device is not found in the
    PCI mapping, an exception is thrown.

    In the case of an unshelve, there is no migration object (or migration
    context), and as such we have an empty pci mapping.

    This fix will only check for a new device if we have a migration object.

    Closes-Bug: 1677621
    Change-Id: I578153ca862753ef5b8041ee3853d3c7b2e2be30
    (cherry picked from commit c2ff276c841934ff147aab836a4bd099297fb46b)