Merge "Fixed suspend for PCI passthrough" into stable/newton

This commit is contained in:
Jenkins 2017-05-26 04:54:16 +00:00 committed by Gerrit Code Review
commit d756b78e30
2 changed files with 22 additions and 1 deletions

View File

@ -11656,6 +11656,26 @@ class LibvirtConnTestCase(test.NoDBTestCase):
instance.system_metadata)
self.assertTrue(mock_attachDevice.called)
@mock.patch.object(FakeVirtDomain, 'attachDeviceFlags')
@mock.patch.object(FakeVirtDomain, 'ID', return_value=1)
@mock.patch.object(utils, 'get_image_from_system_metadata',
return_value=None)
def test_attach_sriov_direct_physical_ports(self,
mock_get_image_metadata,
mock_ID,
mock_attachDevice):
instance = objects.Instance(**self.test_instance)
network_info = _fake_network_info(self, 1)
network_info[0]['vnic_type'] = network_model.VNIC_TYPE_DIRECT_PHYSICAL
guest = libvirt_guest.Guest(FakeVirtDomain())
drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), False)
drvr._attach_sriov_ports(self.context, instance, guest, network_info)
mock_get_image_metadata.assert_called_once_with(
instance.system_metadata)
self.assertTrue(mock_attachDevice.called)
@mock.patch.object(FakeVirtDomain, 'attachDeviceFlags')
@mock.patch.object(FakeVirtDomain, 'ID', return_value=1)
@mock.patch.object(utils, 'get_image_from_system_metadata',

View File

@ -3252,7 +3252,8 @@ class LibvirtDriver(driver.ComputeDriver):
@staticmethod
def _has_sriov_port(network_info):
for vif in network_info:
if vif['vnic_type'] == network_model.VNIC_TYPE_DIRECT:
if vif['vnic_type'] in [network_model.VNIC_TYPE_DIRECT,
network_model.VNIC_TYPE_DIRECT_PHYSICAL]:
return True
return False