diff options
author | pmikus <pmikus@cisco.com> | 2020-09-23 12:44:06 +0000 |
---|---|---|
committer | Peter Mikus <pmikus@cisco.com> | 2020-09-23 13:26:27 +0000 |
commit | 844698802b99b67237250fd31e416081680354c0 (patch) | |
tree | 90c4902032ae35d2038cb445ed072a79c314d1c2 | |
parent | 49a7f2b2830d7684f19508afc53f04288aae241e (diff) |
FIX: Race condition
avf tests works, but vfio-pci tests are following, the interfaces must
be in down state (ideally unbind, as vpp cannot pick them).
Signed-off-by: pmikus <pmikus@cisco.com>
Change-Id: I77af85ec4239059a5455ef68683ca129548bd7bd
-rw-r--r-- | resources/libraries/python/DUTSetup.py | 12 | ||||
-rw-r--r-- | resources/libraries/robot/shared/interfaces.robot | 2 |
2 files changed, 14 insertions, 0 deletions
diff --git a/resources/libraries/python/DUTSetup.py b/resources/libraries/python/DUTSetup.py index 28b36266cf..396029a04f 100644 --- a/resources/libraries/python/DUTSetup.py +++ b/resources/libraries/python/DUTSetup.py @@ -430,6 +430,18 @@ class DUTSetup: ) @staticmethod + def pci_driver_unbind_list(node, *pci_addrs): + """Unbind PCI devices from current driver on node. + + :param node: DUT node. + :param pci_addrs: PCI device addresses. + :type node: dict + :type pci_addrs: list + """ + for pci_addr in pci_addrs: + DUTSetup.pci_driver_unbind(node, pci_addr) + + @staticmethod def pci_driver_bind(node, pci_addr, driver): """Bind PCI device to driver on node. diff --git a/resources/libraries/robot/shared/interfaces.robot b/resources/libraries/robot/shared/interfaces.robot index cd14e8937e..4fdc1ee0a6 100644 --- a/resources/libraries/robot/shared/interfaces.robot +++ b/resources/libraries/robot/shared/interfaces.robot @@ -117,6 +117,8 @@ | | ${index}= | Get Index From List | ${TEST TAGS} | DPDK | | Run Keyword If | ${index} >= 0 | Return From Keyword | | FOR | ${dut} | IN | @{duts} +| | | Stop VPP Service | ${nodes['${dut}']} +| | | PCI Driver Unbind List | ${nodes['${dut}']} | @{${dut}_pf_pci} | | | Run keyword | ${dut}.Add DPDK Dev | @{${dut}_pf_pci} | | | Run Keyword If | ${dpdk_no_tx_checksum_offload} | | | ... | ${dut}.Add DPDK No Tx Checksum Offload |