|
347 | 347 | </type>
|
348 | 348 | </capability>
|
349 | 349 | </capability>
|
| 350 | + </device>""", |
| 351 | + "pci_0000_06_00_1": """ |
| 352 | + <device> |
| 353 | + <name>pci_0000_06_00_1</name> |
| 354 | + <path>/sys/devices/pci0000:00/0000:00:06.1</path> |
| 355 | + <parent></parent> |
| 356 | + <driver> |
| 357 | + <name>i915</name> |
| 358 | + </driver> |
| 359 | + <capability type="pci"> |
| 360 | + <domain>0</domain> |
| 361 | + <bus>6</bus> |
| 362 | + <slot>0</slot> |
| 363 | + <function>1</function> |
| 364 | + <product id="0x591d">HD Graphics P630</product> |
| 365 | + <vendor id="0x8086">Intel Corporation</vendor> |
| 366 | + <capability type='mdev_types'> |
| 367 | + <type id='i915-GVTg_V5_8'> |
| 368 | + <deviceAPI>vfio-pci</deviceAPI> |
| 369 | + <availableInstances>2</availableInstances> |
| 370 | + </type> |
| 371 | + </capability> |
| 372 | + </capability> |
350 | 373 | </device>""",
|
351 | 374 | "mdev_4b20d080_1b54_4048_85b3_a6a62d165c01": """
|
352 | 375 | <device>
|
@@ -25127,6 +25150,28 @@ def fake_nodeDeviceLookupByName(name):
|
25127 | 25150 | self.assertEqual([],
|
25128 | 25151 | drvr._get_mdev_capable_devices(types=['nvidia-12']))
|
25129 | 25152 |
|
| 25153 | + @mock.patch.object(host.Host, 'device_lookup_by_name') |
| 25154 | + def test_get_mdev_capabilities_for_dev_name_optional( |
| 25155 | + self, device_lookup_by_name): |
| 25156 | + # We use another PCI device that doesn't provide a name attribute for |
| 25157 | + # each mdev type. |
| 25158 | + def fake_nodeDeviceLookupByName(name): |
| 25159 | + return FakeNodeDevice(_fake_NodeDevXml[name]) |
| 25160 | + device_lookup_by_name.side_effect = fake_nodeDeviceLookupByName |
| 25161 | + |
| 25162 | + drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), False) |
| 25163 | + |
| 25164 | + expected = {"dev_id": "pci_0000_06_00_1", |
| 25165 | + "vendor_id": 0x8086, |
| 25166 | + "types": {'i915-GVTg_V5_8': {'availableInstances': 2, |
| 25167 | + 'name': None, |
| 25168 | + 'deviceAPI': 'vfio-pci'}, |
| 25169 | + } |
| 25170 | + } |
| 25171 | + self.assertEqual( |
| 25172 | + expected, |
| 25173 | + drvr._get_mdev_capabilities_for_dev("pci_0000_06_00_1")) |
| 25174 | + |
25130 | 25175 | @mock.patch.object(host.Host, 'device_lookup_by_name')
|
25131 | 25176 | @mock.patch.object(host.Host, 'list_mediated_devices')
|
25132 | 25177 | def test_get_mediated_devices(self, list_mediated_devices,
|
|
0 commit comments