On cold migration, drop_move_claim() is called in the confirm stage on the
source node. Since the migration is being tracked by the resource tracker on
the destination node, the source node has the instance in it's
tracked_instances.
So in this case the PCI devices were only freed on the next periodic audit.
For PCI resources such as PCI passthrough, those are limited in number and
should be freed right away.
This patch fixes drop_move_claim() to also free PCI devices when an instance
is in self.tracked_instances().
Co-Authored-By: Steven Webster <email address hidden>
Change-Id: Ie3392f80dfd2650048519c571ffaa11c025ad048
Closes-Bug: #1641750
Reviewed: https:/ /review. openstack. org/370374 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=3a4909ae7e6 294e45f09950ebc a0b3d7126c80af
Committed: https:/
Submitter: Jenkins
Branch: master
commit 3a4909ae7e6294e 45f09950ebca0b3 d7126c80af
Author: Ludovic Beliveau <email address hidden>
Date: Wed Sep 14 14:44:46 2016 -0400
Release PCI devices on drop_move_claim()
On cold migration, drop_move_claim() is called in the confirm stage on the instances.
source node. Since the migration is being tracked by the resource tracker on
the destination node, the source node has the instance in it's
tracked_
So in this case the PCI devices were only freed on the next periodic audit.
For PCI resources such as PCI passthrough, those are limited in number and
should be freed right away.
This patch fixes drop_move_claim() to also free PCI devices when an instance instances( ).
is in self.tracked_
Co-Authored-By: Steven Webster <email address hidden> 0048519c571ffaa 11c025ad048
Change-Id: Ie3392f80dfd265
Closes-Bug: #1641750