diff options
author | Peter Mikus <pmikus@cisco.com> | 2018-10-01 13:21:59 +0000 |
---|---|---|
committer | Peter Mikus <pmikus@cisco.com> | 2018-10-02 07:48:52 +0000 |
commit | 9db603df1076b5ee56ef6326fd0e396b166ed5b1 (patch) | |
tree | 48d24ee7b03921ddcbbb145b621a555e1c3365ea | |
parent | 424749b09ac91c4eb5eabdd8bdd9d34b8c130783 (diff) |
CSIT-1325 - FIX: AVF tests failing on unbind
Currently there is and issue when consecutive AVF suites are
trying to initialize AVF and bind VF to vfio-pci driver, there
seems to be race condition if VPP has already VFs allocated.
This patch should introduce safer contstrain to disable VPP prior
AVF init.
Change-Id: Id8839200f19d9e7a18d161b660cfb1e43a8ca379
Signed-off-by: Peter Mikus <pmikus@cisco.com>
5 files changed, 5 insertions, 5 deletions
diff --git a/resources/libraries/python/InterfaceUtil.py b/resources/libraries/python/InterfaceUtil.py index 290db1db67..7fc7f85723 100644 --- a/resources/libraries/python/InterfaceUtil.py +++ b/resources/libraries/python/InterfaceUtil.py @@ -1338,11 +1338,11 @@ class InterfaceUtil(object): current_driver = DUTSetup.get_pci_dev_driver(node,\ pf_pci_addr.replace(':', r'\:')) + VPPUtil.stop_vpp_service(node) if current_driver != kernel_driver: # PCI device must be re-bound to kernel driver before creating VFs. DUTSetup.verify_kernel_module(node, kernel_driver, force_load=True) # Stop VPP to prevent deadlock. - VPPUtil.stop_vpp_service(node) # Unbind from current driver. DUTSetup.pci_driver_unbind(node, pf_pci_addr) # Bind to kernel driver. diff --git a/tests/vpp/perf/l2/10ge2p1x710-avf-eth-l2xcbase-mrr.robot b/tests/vpp/perf/l2/10ge2p1x710-avf-eth-l2xcbase-mrr.robot index d92dd728d3..779b7d0424 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-avf-eth-l2xcbase-mrr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-avf-eth-l2xcbase-mrr.robot @@ -75,7 +75,7 @@ | | ... | ${s_limit} | ${framesize} | | And Apply startup configuration on all VPP DUTs | | When Initialize AVF interfaces -| | And Initialize L2 xconnect in circular topology +| | And Initialize L2 Xconnect In 3-node Circular Topology | | Then Traffic should pass with maximum rate | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile} diff --git a/tests/vpp/perf/l2/10ge2p1x710-avf-eth-l2xcbase-ndrpdr.robot b/tests/vpp/perf/l2/10ge2p1x710-avf-eth-l2xcbase-ndrpdr.robot index 01a638dc7f..3ebeacab0f 100644 --- a/tests/vpp/perf/l2/10ge2p1x710-avf-eth-l2xcbase-ndrpdr.robot +++ b/tests/vpp/perf/l2/10ge2p1x710-avf-eth-l2xcbase-ndrpdr.robot @@ -81,7 +81,7 @@ | | ... | ${s_limit} | ${framesize} | | And Apply startup configuration on all VPP DUTs | | When Initialize AVF interfaces -| | And Initialize L2 xconnect in circular topology +| | And Initialize L2 Xconnect In 3-node Circular Topology | | Then Find NDR and PDR intervals using optimized search | | ... | ${framesize} | ${traffic_profile} | ${min_rate} | ${max_rate} diff --git a/tests/vpp/perf/l2/25ge2p1xxv710-avf-eth-l2xcbase-mrr.robot b/tests/vpp/perf/l2/25ge2p1xxv710-avf-eth-l2xcbase-mrr.robot index de0265aada..33e1f263d6 100644 --- a/tests/vpp/perf/l2/25ge2p1xxv710-avf-eth-l2xcbase-mrr.robot +++ b/tests/vpp/perf/l2/25ge2p1xxv710-avf-eth-l2xcbase-mrr.robot @@ -77,7 +77,7 @@ | | ... | ${s_25G} | ${framesize} | pps_limit=${s_18.75Mpps} | | And Apply startup configuration on all VPP DUTs | | When Initialize AVF interfaces -| | And Initialize L2 xconnect in circular topology +| | And Initialize L2 Xconnect In 3-node Circular Topology | | Then Traffic should pass with maximum rate | | ... | ${max_rate}pps | ${framesize} | ${traffic_profile} diff --git a/tests/vpp/perf/l2/25ge2p1xxv710-avf-eth-l2xcbase-ndrpdr.robot b/tests/vpp/perf/l2/25ge2p1xxv710-avf-eth-l2xcbase-ndrpdr.robot index 430e515433..df89e84128 100644 --- a/tests/vpp/perf/l2/25ge2p1xxv710-avf-eth-l2xcbase-ndrpdr.robot +++ b/tests/vpp/perf/l2/25ge2p1xxv710-avf-eth-l2xcbase-ndrpdr.robot @@ -84,7 +84,7 @@ | | ... | ${s_25G} | ${framesize} | pps_limit=${s_18.75Mpps} | | And Apply startup configuration on all VPP DUTs | | When Initialize AVF interfaces -| | And Initialize L2 xconnect in circular topology +| | And Initialize L2 Xconnect In 3-node Circular Topology | | Then Find NDR and PDR intervals using optimized search | | ... | ${framesize} | ${traffic_profile} | ${min_rate} | ${max_rate} |