[PATCH] regression_tests: remove rx off from bonding and team recipes
by Ondrej Lichtner
From: Ondrej Lichtner <olichtne(a)redhat.com>
Following up on the meeting today we decided not to test rx=off for bond
and team recipes since neither of them support it.
Signed-off-by: Ondrej Lichtner <olichtne(a)redhat.com>
---
recipes/regression_tests/phase1/3_vlans_over_bond.py | 3 +--
recipes/regression_tests/phase1/bonding_test.py | 3 +--
recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py | 3 +--
recipes/regression_tests/phase2/3_vlans_over_team.py | 3 +--
recipes/regression_tests/phase2/team_test.py | 3 +--
.../phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py | 3 +--
6 files changed, 6 insertions(+), 12 deletions(-)
diff --git a/recipes/regression_tests/phase1/3_vlans_over_bond.py b/recipes/regression_tests/phase1/3_vlans_over_bond.py
index 734d426..291df08 100644
--- a/recipes/regression_tests/phase1/3_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/3_vlans_over_bond.py
@@ -27,8 +27,7 @@ offloads = ["gro", "gso", "tso", "rx", "tx"]
offload_settings = [ [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "off"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "on"), ("gso", "off"), ("tso", "off"), ("tx", "on"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "off")]]
+ [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")]]
ipv = ctl.get_alias("ipv")
mtu = ctl.get_alias("mtu")
diff --git a/recipes/regression_tests/phase1/bonding_test.py b/recipes/regression_tests/phase1/bonding_test.py
index 25f36cd..49632ab 100644
--- a/recipes/regression_tests/phase1/bonding_test.py
+++ b/recipes/regression_tests/phase1/bonding_test.py
@@ -27,8 +27,7 @@ offloads = ["gro", "gso", "tso", "rx", "tx"]
offload_settings = [ [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "off"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "on"), ("gso", "off"), ("tso", "off"), ("tx", "on"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "off")]]
+ [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")]]
ipv = ctl.get_alias("ipv")
mtu = ctl.get_alias("mtu")
diff --git a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
index b6b10c0..9b255c5 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
@@ -34,8 +34,7 @@ offloads = ["gro", "gso", "tso", "rx", "tx"]
offload_settings = [ [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "off"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "on"), ("gso", "off"), ("tso", "off"), ("tx", "on"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "off")]]
+ [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")]]
ipv = ctl.get_alias("ipv")
netperf_duration = int(ctl.get_alias("netperf_duration"))
diff --git a/recipes/regression_tests/phase2/3_vlans_over_team.py b/recipes/regression_tests/phase2/3_vlans_over_team.py
index 0968dc5..0920d69 100644
--- a/recipes/regression_tests/phase2/3_vlans_over_team.py
+++ b/recipes/regression_tests/phase2/3_vlans_over_team.py
@@ -27,8 +27,7 @@ offloads = ["gro", "gso", "tso", "rx", "tx"]
offload_settings = [ [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "off"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "on"), ("gso", "off"), ("tso", "off"), ("tx", "on"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "off")]]
+ [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")]]
ipv = ctl.get_alias("ipv")
mtu = ctl.get_alias("mtu")
diff --git a/recipes/regression_tests/phase2/team_test.py b/recipes/regression_tests/phase2/team_test.py
index 41781d1..b17a5c0 100644
--- a/recipes/regression_tests/phase2/team_test.py
+++ b/recipes/regression_tests/phase2/team_test.py
@@ -26,8 +26,7 @@ offloads = ["gro", "gso", "tso", "rx", "tx"]
offload_settings = [ [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "off"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "on"), ("gso", "off"), ("tso", "off"), ("tx", "on"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "off")]]
+ [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")]]
ipv = ctl.get_alias("ipv")
mtu = ctl.get_alias("mtu")
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
index e93226d..4b9b096 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
@@ -34,8 +34,7 @@ offloads = ["gro", "gso", "tso", "rx", "tx"]
offload_settings = [ [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "off"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "on")],
[("gro", "on"), ("gso", "off"), ("tso", "off"), ("tx", "on"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")],
- [("gro", "on"), ("gso", "on"), ("tso", "on"), ("tx", "on"), ("rx", "off")]]
+ [("gro", "on"), ("gso", "on"), ("tso", "off"), ("tx", "off"), ("rx", "on")]]
ipv = ctl.get_alias("ipv")
netperf_duration = int(ctl.get_alias("netperf_duration"))
--
2.6.2
8 years, 1 month
[PATCH 1/2] PerfRepo: remove object initialization from Element objects
by Ondrej Lichtner
From: Ondrej Lichtner <olichtne(a)redhat.com>
The PerfRepo objects have the ability to be initialized from an XML
Element tree, corresponding to an XML response from the REST API.
This was implemented by checking the type of input using the isinstance
method. However on Python 2.6 the API for ElementTree is different and
Element is just a function instead of a class, so this method cannot be
used.
Instead this patch replaces the isinstance call with the iselement()
call that is provided by the ElementTree API in both Python versions.
Signed-off-by: Ondrej Lichtner <olichtne(a)redhat.com>
---
lnst/Controller/PerfRepo.py | 27 ++++++++++++++++-----------
1 file changed, 16 insertions(+), 11 deletions(-)
diff --git a/lnst/Controller/PerfRepo.py b/lnst/Controller/PerfRepo.py
index 3d2eed3..cc53f2e 100644
--- a/lnst/Controller/PerfRepo.py
+++ b/lnst/Controller/PerfRepo.py
@@ -19,7 +19,7 @@ import textwrap
import pprint
from types import StringType, NoneType
from xml.etree import ElementTree
-from xml.etree.ElementTree import Element
+from xml.etree.ElementTree import Element, iselement
from lnst.Common.Utils import recursive_dict_update
from lnst.Common.Utils import dot_to_dict, dict_to_dot, indent
@@ -60,11 +60,12 @@ class PerfRepoTest(PerfRepoObject):
self._description = None
self._groupid = None
self._metrics = []
- elif type(xml) is StringType or isinstance(xml, Element):
+ elif type(xml) is StringType or iselement(xml):
if type(xml) is StringType:
root = ElementTree.fromstring(xml)
- else:
+ elif iselement(xml):
root = xml
+
if root.tag != "test":
raise PerfRepoException("Invalid xml.")
@@ -171,11 +172,12 @@ class PerfRepoTestExecution(PerfRepoObject):
self._values = []
self._tags = []
self._parameters = []
- elif type(xml) is StringType or isinstance(xml, Element):
+ elif type(xml) is StringType or iselement(xml):
if type(xml) is StringType:
root = ElementTree.fromstring(xml)
- else:
+ elif iselement(xml):
root = xml
+
if root.tag != "testExecution":
raise PerfRepoException("Invalid xml.")
@@ -340,11 +342,12 @@ class PerfRepoValue(PerfRepoObject):
self._metricName = None
self._result = None
self._parameters = []
- elif type(xml) is StringType or isinstance(xml, Element):
+ elif type(xml) is StringType or iselement(xml):
if type(xml) is StringType:
root = ElementTree.fromstring(xml)
- else:
+ elif iselement(xml):
root = xml
+
if root.tag != "value":
raise PerfRepoException("Invalid xml.")
@@ -420,11 +423,12 @@ class PerfRepoMetric(PerfRepoObject):
self._name = None
self._description = None
self._comparator = None
- elif type(xml) is StringType or isinstance(xml, Element):
+ elif type(xml) is StringType or iselement(xml):
if type(xml) is StringType:
root = ElementTree.fromstring(xml)
- else:
+ elif iselement(xml):
root = xml
+
if root.tag != "metric":
raise PerfRepoException("Invalid xml.")
@@ -493,11 +497,12 @@ class PerfRepoReport(PerfRepoObject):
self._name = None
self._type = None
self._properties = {}
- elif type(xml) is StringType or isinstance(xml, Element):
+ elif type(xml) is StringType or iselement(xml):
if type(xml) is StringType:
root = ElementTree.fromstring(xml)
- else:
+ elif iselement(xml):
root = xml
+
if root.tag != "report":
raise PerfRepoException("Invalid xml.")
--
2.6.2
8 years, 1 month
[PATCH 1/2] PerfRepo: remove object initialization from Element objects
by Ondrej Lichtner
From: Ondrej Lichtner <olichtne(a)redhat.com>
The PerfRepo objects have the ability to be initialized from an XML
Element tree, corresponding to an XML response from the REST API.
However this feature causes a problem on RHEL 6 machines where only
Python 2.6 is available and the ElementTree API is different. Because of
this and the fact that we don't use this feature anywhere this patch
removes that functionality.
Signed-off-by: Ondrej Lichtner <olichtne(a)redhat.com>
---
lnst/Controller/PerfRepo.py | 40 +++++++++++++++-------------------------
1 file changed, 15 insertions(+), 25 deletions(-)
diff --git a/lnst/Controller/PerfRepo.py b/lnst/Controller/PerfRepo.py
index 3d2eed3..305a766 100644
--- a/lnst/Controller/PerfRepo.py
+++ b/lnst/Controller/PerfRepo.py
@@ -60,11 +60,9 @@ class PerfRepoTest(PerfRepoObject):
self._description = None
self._groupid = None
self._metrics = []
- elif type(xml) is StringType or isinstance(xml, Element):
- if type(xml) is StringType:
- root = ElementTree.fromstring(xml)
- else:
- root = xml
+ elif type(xml) is StringType:
+ root = ElementTree.fromstring(xml)
+
if root.tag != "test":
raise PerfRepoException("Invalid xml.")
@@ -171,11 +169,9 @@ class PerfRepoTestExecution(PerfRepoObject):
self._values = []
self._tags = []
self._parameters = []
- elif type(xml) is StringType or isinstance(xml, Element):
- if type(xml) is StringType:
- root = ElementTree.fromstring(xml)
- else:
- root = xml
+ elif type(xml) is StringType:
+ root = ElementTree.fromstring(xml)
+
if root.tag != "testExecution":
raise PerfRepoException("Invalid xml.")
@@ -340,11 +336,9 @@ class PerfRepoValue(PerfRepoObject):
self._metricName = None
self._result = None
self._parameters = []
- elif type(xml) is StringType or isinstance(xml, Element):
- if type(xml) is StringType:
- root = ElementTree.fromstring(xml)
- else:
- root = xml
+ elif type(xml) is StringType:
+ root = ElementTree.fromstring(xml)
+
if root.tag != "value":
raise PerfRepoException("Invalid xml.")
@@ -420,11 +414,9 @@ class PerfRepoMetric(PerfRepoObject):
self._name = None
self._description = None
self._comparator = None
- elif type(xml) is StringType or isinstance(xml, Element):
- if type(xml) is StringType:
- root = ElementTree.fromstring(xml)
- else:
- root = xml
+ elif type(xml) is StringType:
+ root = ElementTree.fromstring(xml)
+
if root.tag != "metric":
raise PerfRepoException("Invalid xml.")
@@ -493,11 +485,9 @@ class PerfRepoReport(PerfRepoObject):
self._name = None
self._type = None
self._properties = {}
- elif type(xml) is StringType or isinstance(xml, Element):
- if type(xml) is StringType:
- root = ElementTree.fromstring(xml)
- else:
- root = xml
+ elif type(xml) is StringType:
+ root = ElementTree.fromstring(xml)
+
if root.tag != "report":
raise PerfRepoException("Invalid xml.")
--
2.6.2
8 years, 1 month
[PATCH] regression_tests: change ethtool offload commands
by Ondrej Lichtner
From: Ondrej Lichtner <olichtne(a)redhat.com>
Instead of changing the device features (offloads) one by one by calling
multiple ethtool commands we will be calling just one big ethtool
command changing all the features of the specific offload setting. This
avoids any dependencies between offloads.
Signed-off-by: Ondrej Lichtner <olichtne(a)redhat.com>
---
recipes/regression_tests/phase1/3_vlans.py | 19 ++++----
.../regression_tests/phase1/3_vlans_over_bond.py | 25 ++++++-----
recipes/regression_tests/phase1/bonding_test.py | 16 +++----
.../phase1/virtual_bridge_2_vlans_over_bond.py | 52 +++++++++-------------
.../phase1/virtual_bridge_vlan_in_guest.py | 22 +++++----
.../phase1/virtual_bridge_vlan_in_host.py | 22 +++++----
.../regression_tests/phase2/3_vlans_over_team.py | 25 ++++++-----
recipes/regression_tests/phase2/team_test.py | 32 ++++++-------
...l_ovs_bridge_2_vlans_over_active_backup_bond.py | 52 +++++++++-------------
.../phase2/virtual_ovs_bridge_vlan_in_guest.py | 22 +++++----
.../phase2/virtual_ovs_bridge_vlan_in_host.py | 22 +++++----
11 files changed, 141 insertions(+), 168 deletions(-)
diff --git a/recipes/regression_tests/phase1/3_vlans.py b/recipes/regression_tests/phase1/3_vlans.py
index 68974e7..7dbcf41 100644
--- a/recipes/regression_tests/phase1/3_vlans.py
+++ b/recipes/regression_tests/phase1/3_vlans.py
@@ -129,11 +129,14 @@ for vlan1 in vlans:
# These tests should pass
# Ping between same VLANs
for setting in offload_settings:
+ dev_features = ""
for offload in setting:
- m1.run("ethtool -K %s %s %s" % (m1_phy1.get_devname(),
- offload[0], offload[1]))
- m2.run("ethtool -K %s %s %s" % (m2_phy1.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+
+ m1.run("ethtool -K %s %s" % (m1_phy1.get_devname(),
+ dev_features))
+ m2.run("ethtool -K %s %s" % (m2_phy1.get_devname(),
+ dev_features))
if ipv in [ 'ipv4', 'both' ]:
# Ping test
@@ -247,8 +250,8 @@ for vlan1 in vlans:
m1.run(ping_mod6, expect="fail")
#reset offload states
+dev_features = ""
for offload in offloads:
- m1.run("ethtool -K %s %s %s" % (m1_phy1.get_devname(),
- offload, "on"))
- m2.run("ethtool -K %s %s %s" % (m2_phy1.get_devname(),
- offload, "on"))
+ dev_features += " %s %s" % (offload, "on")
+m1.run("ethtool -K %s %s" % (m1_phy1.get_devname(), dev_features))
+m2.run("ethtool -K %s %s" % (m2_phy1.get_devname(), dev_features))
diff --git a/recipes/regression_tests/phase1/3_vlans_over_bond.py b/recipes/regression_tests/phase1/3_vlans_over_bond.py
index d382036..55dfa3b 100644
--- a/recipes/regression_tests/phase1/3_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/3_vlans_over_bond.py
@@ -132,13 +132,15 @@ for vlan1 in vlans:
# Ping between same VLANs
for setting in offload_settings:
#apply offload setting
+ dev_features = ""
for offload in setting:
- m1.run("ethtool -K %s %s %s" % (m1_phy1.get_devname(),
- offload[0], offload[1]))
- m1.run("ethtool -K %s %s %s" % (m1_phy2.get_devname(),
- offload[0], offload[1]))
- m2.run("ethtool -K %s %s %s" % (m2_phy1.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+ m1.run("ethtool -K %s %s" % (m1_phy1.get_devname(),
+ dev_features))
+ m1.run("ethtool -K %s %s" % (m1_phy2.get_devname(),
+ dev_features))
+ m2.run("ethtool -K %s %s" % (m2_phy1.get_devname(),
+ dev_features))
if ipv in [ 'ipv4', 'both' ]:
# Ping test
@@ -253,10 +255,9 @@ for vlan1 in vlans:
m1.run(ping_mod6, expect="fail")
#reset offload states
+dev_features = ""
for offload in offloads:
- m1.run("ethtool -K %s %s %s" % (m1_phy1.get_devname(),
- offload, "on"))
- m1.run("ethtool -K %s %s %s" % (m1_phy2.get_devname(),
- offload, "on"))
- m2.run("ethtool -K %s %s %s" % (m2_phy1.get_devname(),
- offload, "on"))
+ dev_features += " %s %s" % (offload, "on")
+m1.run("ethtool -K %s %s" % (m1_phy1.get_devname(), dev_features))
+m1.run("ethtool -K %s %s" % (m1_phy2.get_devname(), dev_features))
+m2.run("ethtool -K %s %s" % (m2_phy1.get_devname(), dev_features))
diff --git a/recipes/regression_tests/phase1/bonding_test.py b/recipes/regression_tests/phase1/bonding_test.py
index 079a8fe..da2ac82 100644
--- a/recipes/regression_tests/phase1/bonding_test.py
+++ b/recipes/regression_tests/phase1/bonding_test.py
@@ -117,11 +117,11 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
ctl.wait(15)
for setting in offload_settings:
+ dev_features = ""
for offload in setting:
- m1.run("ethtool -K %s %s %s" % (test_if1.get_devname(),
- offload[0], offload[1]))
- m2.run("ethtool -K %s %s %s" % (test_if2.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+ m1.run("ethtool -K %s %s" % (test_if1.get_devname(), dev_features))
+ m2.run("ethtool -K %s %s" % (test_if2.get_devname(), dev_features))
if ipv in [ 'ipv4', 'both' ]:
m1.run(ping_mod)
@@ -216,8 +216,8 @@ for setting in offload_settings:
server_proc.intr()
#reset offload states
+dev_features = ""
for offload in offloads:
- m1.run("ethtool -K %s %s %s" % (test_if1.get_devname(),
- offload, "on"))
- m2.run("ethtool -K %s %s %s" % (test_if2.get_devname(),
- offload, "on"))
+ dev_features += " %s %s" % (offload, "on")
+m1.run("ethtool -K %s %s" % (test_if1.get_devname(), dev_features))
+m2.run("ethtool -K %s %s" % (test_if2.get_devname(), dev_features))
diff --git a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
index e1c7796..c9eac90 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
@@ -202,23 +202,17 @@ g4.get_interface("guestnic").set_mtu(mtu)
ctl.wait(15)
for setting in offload_settings:
+ dev_features = ""
for offload in setting:
- h1.run("ethtool -K %s %s %s" % (h1_nic1.get_devname(),
- offload[0], offload[1]))
- h1.run("ethtool -K %s %s %s" % (h1_nic2.get_devname(),
- offload[0], offload[1]))
- h2.run("ethtool -K %s %s %s" % (h2_nic1.get_devname(),
- offload[0], offload[1]))
- h2.run("ethtool -K %s %s %s" % (h2_nic2.get_devname(),
- offload[0], offload[1]))
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload[0], offload[1]))
- g2.run("ethtool -K %s %s %s" % (g2_guestnic.get_devname(),
- offload[0], offload[1]))
- g3.run("ethtool -K %s %s %s" % (g3_guestnic.get_devname(),
- offload[0], offload[1]))
- g4.run("ethtool -K %s %s %s" % (g4_guestnic.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+ h1.run("ethtool -K %s %s" % (h1_nic1.get_devname(), dev_features))
+ h1.run("ethtool -K %s %s" % (h1_nic2.get_devname(), dev_features))
+ h2.run("ethtool -K %s %s" % (h2_nic1.get_devname(), dev_features))
+ h2.run("ethtool -K %s %s" % (h2_nic2.get_devname(), dev_features))
+ g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+ g2.run("ethtool -K %s %s" % (g2_guestnic.get_devname(), dev_features))
+ g3.run("ethtool -K %s %s" % (g3_guestnic.get_devname(), dev_features))
+ g4.run("ethtool -K %s %s" % (g4_guestnic.get_devname(), dev_features))
if ipv in [ 'ipv4', 'both' ]:
g1.run(ping_mod)
@@ -325,20 +319,14 @@ for setting in offload_settings:
server_proc.intr()
#reset offload states
+dev_features = ""
for offload in offloads:
- h1.run("ethtool -K %s %s %s" % (h1_nic1.get_devname(),
- offload, "on"))
- h1.run("ethtool -K %s %s %s" % (h1_nic2.get_devname(),
- offload, "on"))
- h2.run("ethtool -K %s %s %s" % (h2_nic1.get_devname(),
- offload, "on"))
- h2.run("ethtool -K %s %s %s" % (h2_nic2.get_devname(),
- offload, "on"))
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload, "on"))
- g2.run("ethtool -K %s %s %s" % (g2_guestnic.get_devname(),
- offload, "on"))
- g3.run("ethtool -K %s %s %s" % (g3_guestnic.get_devname(),
- offload, "on"))
- g4.run("ethtool -K %s %s %s" % (g4_guestnic.get_devname(),
- offload, "on"))
+ dev_features = " %s %s" % (offload, "on")
+h1.run("ethtool -K %s %s" % (h1_nic1.get_devname(), dev_features))
+h1.run("ethtool -K %s %s" % (h1_nic2.get_devname(), dev_features))
+h2.run("ethtool -K %s %s" % (h2_nic1.get_devname(), dev_features))
+h2.run("ethtool -K %s %s" % (h2_nic2.get_devname(), dev_features))
+g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+g2.run("ethtool -K %s %s" % (g2_guestnic.get_devname(), dev_features))
+g3.run("ethtool -K %s %s" % (g3_guestnic.get_devname(), dev_features))
+g4.run("ethtool -K %s %s" % (g4_guestnic.get_devname(), dev_features))
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
index 81e4a25..16b51bc 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
@@ -134,13 +134,12 @@ h2.get_interface("nic").set_mtu(mtu)
ctl.wait(15)
for setting in offload_settings:
+ dev_features = ""
for offload in setting:
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload[0], offload[1]))
- h1.run("ethtool -K %s %s %s" % (h1_nic.get_devname(),
- offload[0], offload[1]))
- h2.run("ethtool -K %s %s %s" % (h2_nic.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+ g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+ h1.run("ethtool -K %s %s" % (h1_nic.get_devname(), dev_features))
+ h2.run("ethtool -K %s %s" % (h2_nic.get_devname(), dev_features))
if ipv in [ 'ipv4', 'both' ]:
g1.run(ping_mod)
@@ -241,10 +240,9 @@ for setting in offload_settings:
server_proc.intr()
#reset offload states
+dev_features = ""
for offload in offloads:
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload, "on"))
- h1.run("ethtool -K %s %s %s" % (h1_nic.get_devname(),
- offload, "on"))
- h2.run("ethtool -K %s %s %s" % (h2_nic.get_devname(),
- offload, "on"))
+ dev_features += " %s %s" % (offload, "on")
+g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+h1.run("ethtool -K %s %s" % (h1_nic.get_devname(), dev_features))
+h2.run("ethtool -K %s %s" % (h2_nic.get_devname(), dev_features))
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
index e5d4927..ad9f833 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
@@ -134,13 +134,12 @@ h2.get_interface("vlan10").set_mtu(mtu)
ctl.wait(15)
for setting in offload_settings:
+ dev_features = ""
for offload in setting:
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload[0], offload[1]))
- h1.run("ethtool -K %s %s %s" % (h1_nic.get_devname(),
- offload[0], offload[1]))
- h2.run("ethtool -K %s %s %s" % (h2_nic.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+ g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+ h1.run("ethtool -K %s %s" % (h1_nic.get_devname(), dev_features))
+ h2.run("ethtool -K %s %s" % (h2_nic.get_devname(), dev_features))
if ipv in [ 'ipv4', 'both' ]:
g1.run(ping_mod)
@@ -241,10 +240,9 @@ for setting in offload_settings:
server_proc.intr()
#reset offload states
+dev_features = ""
for offload in offloads:
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload, "on"))
- h1.run("ethtool -K %s %s %s" % (h1_nic.get_devname(),
- offload, "on"))
- h2.run("ethtool -K %s %s %s" % (h2_nic.get_devname(),
- offload, "on"))
+ dev_features += " %s %s" % (offload, "on")
+g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+h1.run("ethtool -K %s %s" % (h1_nic.get_devname(), dev_features))
+h2.run("ethtool -K %s %s" % (h2_nic.get_devname(), dev_features))
diff --git a/recipes/regression_tests/phase2/3_vlans_over_team.py b/recipes/regression_tests/phase2/3_vlans_over_team.py
index 28914cc..ee3706f 100644
--- a/recipes/regression_tests/phase2/3_vlans_over_team.py
+++ b/recipes/regression_tests/phase2/3_vlans_over_team.py
@@ -132,13 +132,15 @@ for vlan1 in vlans:
# These tests should pass
# Ping between same VLANs
for setting in offload_settings:
+ dev_features = ""
for offload in setting:
- m1.run("ethtool -K %s %s %s" % (m1_phy1.get_devname(),
- offload[0], offload[1]))
- m1.run("ethtool -K %s %s %s" % (m1_phy2.get_devname(),
- offload[0], offload[1]))
- m2.run("ethtool -K %s %s %s" % (m2_phy1.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+ m1.run("ethtool -K %s %s" % (m1_phy1.get_devname(),
+ dev_features))
+ m1.run("ethtool -K %s %s" % (m1_phy2.get_devname(),
+ dev_features))
+ m2.run("ethtool -K %s %s" % (m2_phy1.get_devname(),
+ dev_features))
if ipv in [ 'ipv4', 'both' ]:
# Ping test
@@ -252,10 +254,9 @@ for vlan1 in vlans:
m1.run(ping_mod6, expect="fail")
#reset offload states
+dev_features = ""
for offload in offloads:
- m1.run("ethtool -K %s %s %s" % (m1_phy1.get_devname(),
- offload, "on"))
- m1.run("ethtool -K %s %s %s" % (m1_phy2.get_devname(),
- offload, "on"))
- m2.run("ethtool -K %s %s %s" % (m2_phy1.get_devname(),
- offload, "on"))
+ dev_features += " %s %s" % (offload, "on")
+m1.run("ethtool -K %s %s" % (m1_phy1.get_devname(), dev_features))
+m1.run("ethtool -K %s %s" % (m1_phy2.get_devname(), dev_features))
+m2.run("ethtool -K %s %s" % (m2_phy1.get_devname(), dev_features))
diff --git a/recipes/regression_tests/phase2/team_test.py b/recipes/regression_tests/phase2/team_test.py
index 9ee0ae0..ba7bd55 100644
--- a/recipes/regression_tests/phase2/team_test.py
+++ b/recipes/regression_tests/phase2/team_test.py
@@ -117,11 +117,11 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
ctl.wait(15)
for setting in offload_settings:
+ dev_features = ""
for offload in setting:
- m1.run("ethtool -K %s %s %s" % (test_if1.get_devname(),
- offload[0], offload[1]))
- m2.run("ethtool -K %s %s %s" % (test_if2.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+ m1.run("ethtool -K %s %s" % (test_if1.get_devname(), dev_features))
+ m2.run("ethtool -K %s %s" % (test_if2.get_devname(), dev_features))
if ipv in [ 'ipv4', 'both' ]:
m1.run(ping_mod)
@@ -223,11 +223,11 @@ for setting in offload_settings:
server_proc.intr()
#reset offload states
+dev_features = ""
for offload in offloads:
- m1.run("ethtool -K %s %s %s" % (test_if1.get_devname(),
- offload, "on"))
- m2.run("ethtool -K %s %s %s" % (test_if2.get_devname(),
- offload, "on"))
+ dev_features += " %s %s" % (offload, "on")
+m1.run("ethtool -K %s %s" % (test_if1.get_devname(), dev_features))
+m2.run("ethtool -K %s %s" % (test_if2.get_devname(), dev_features))
ping_mod.update_options({"addr" : test_if1.get_ip(0),
"iface" : test_if2.get_devname()})
@@ -252,11 +252,11 @@ netperf_cli_udp6.update_options({"netperf_server" : test_if2.get_ip(1),
"netperf_opts" : "-i %s -L %s -6" % (nperf_max_runs, test_if1.get_ip(1))})
for setting in offload_settings:
+ dev_features = ""
for offload in setting:
- m1.run("ethtool -K %s %s %s" % (test_if1.get_devname(),
- offload[0], offload[1]))
- m2.run("ethtool -K %s %s %s" % (test_if2.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+ m1.run("ethtool -K %s %s" % (test_if1.get_devname(), dev_features))
+ m2.run("ethtool -K %s %s" % (test_if2.get_devname(), dev_features))
if ipv in [ 'ipv4', 'both' ]:
m2.run(ping_mod)
@@ -358,8 +358,8 @@ for setting in offload_settings:
server_proc.intr()
#reset offload states
+dev_features = ""
for offload in offloads:
- m1.run("ethtool -K %s %s %s" % (test_if1.get_devname(),
- offload, "on"))
- m2.run("ethtool -K %s %s %s" % (test_if2.get_devname(),
- offload, "on"))
+ dev_features += " %s %s" % (offload "on")
+m1.run("ethtool -K %s %s" % (test_if1.get_devname(), dev_features))
+m2.run("ethtool -K %s %s" % (test_if2.get_devname(), dev_features))
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
index 4f824a0..43a8dde 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
@@ -179,23 +179,17 @@ ping_mod6_bad2 = ctl.get_module("Icmp6Ping",
ctl.wait(15)
for setting in offload_settings:
+ dev_features = ""
for offload in setting:
- h1.run("ethtool -K %s %s %s" % (h1_nic1.get_devname(),
- offload[0], offload[1]))
- h1.run("ethtool -K %s %s %s" % (h1_nic2.get_devname(),
- offload[0], offload[1]))
- h2.run("ethtool -K %s %s %s" % (h2_nic1.get_devname(),
- offload[0], offload[1]))
- h2.run("ethtool -K %s %s %s" % (h2_nic2.get_devname(),
- offload[0], offload[1]))
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload[0], offload[1]))
- g2.run("ethtool -K %s %s %s" % (g2_guestnic.get_devname(),
- offload[0], offload[1]))
- g3.run("ethtool -K %s %s %s" % (g3_guestnic.get_devname(),
- offload[0], offload[1]))
- g4.run("ethtool -K %s %s %s" % (g4_guestnic.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+ h1.run("ethtool -K %s %s" % (h1_nic1.get_devname(), dev_features))
+ h1.run("ethtool -K %s %s" % (h1_nic2.get_devname(), dev_features))
+ h2.run("ethtool -K %s %s" % (h2_nic1.get_devname(), dev_features))
+ h2.run("ethtool -K %s %s" % (h2_nic2.get_devname(), dev_features))
+ g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+ g2.run("ethtool -K %s %s" % (g2_guestnic.get_devname(), dev_features))
+ g3.run("ethtool -K %s %s" % (g3_guestnic.get_devname(), dev_features))
+ g4.run("ethtool -K %s %s" % (g4_guestnic.get_devname(), dev_features))
if ipv in [ 'ipv4', 'both' ]:
g1.run(ping_mod)
@@ -295,20 +289,14 @@ for setting in offload_settings:
server_proc.intr()
#reset offload states
+dev_features = ""
for offload in offloads:
- h1.run("ethtool -K %s %s %s" % (h1_nic1.get_devname(),
- offload, "on"))
- h1.run("ethtool -K %s %s %s" % (h1_nic2.get_devname(),
- offload, "on"))
- h2.run("ethtool -K %s %s %s" % (h2_nic1.get_devname(),
- offload, "on"))
- h2.run("ethtool -K %s %s %s" % (h2_nic2.get_devname(),
- offload, "on"))
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload, "on"))
- g2.run("ethtool -K %s %s %s" % (g2_guestnic.get_devname(),
- offload, "on"))
- g3.run("ethtool -K %s %s %s" % (g3_guestnic.get_devname(),
- offload, "on"))
- g4.run("ethtool -K %s %s %s" % (g4_guestnic.get_devname(),
- offload, "on"))
+ dev_features += " %s %s" % (offload, "on")
+h1.run("ethtool -K %s %s" % (h1_nic1.get_devname(), dev_features))
+h1.run("ethtool -K %s %s" % (h1_nic2.get_devname(), dev_features))
+h2.run("ethtool -K %s %s" % (h2_nic1.get_devname(), dev_features))
+h2.run("ethtool -K %s %s" % (h2_nic2.get_devname(), dev_features))
+g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+g2.run("ethtool -K %s %s" % (g2_guestnic.get_devname(), dev_features))
+g3.run("ethtool -K %s %s" % (g3_guestnic.get_devname(), dev_features))
+g4.run("ethtool -K %s %s" % (g4_guestnic.get_devname(), dev_features))
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
index 9ab7398..afc8c7d 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
@@ -121,13 +121,12 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
ctl.wait(15)
for setting in offload_settings:
+ dev_features = ""
for offload in setting:
- h1.run("ethtool -K %s %s %s" % (h1_nic.get_devname(),
- offload[0], offload[1]))
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload[0], offload[1]))
- h2.run("ethtool -K %s %s %s" % (h2_nic.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+ h1.run("ethtool -K %s %s" % (h1_nic.get_devname(), dev_features))
+ g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+ h2.run("ethtool -K %s %s" % (h2_nic.get_devname(), dev_features))
if ipv in [ 'ipv4', 'both' ]:
g1.run(ping_mod)
@@ -221,10 +220,9 @@ for setting in offload_settings:
server_proc.intr()
#reset offload states
+dev_features = ""
for offload in offloads:
- h1.run("ethtool -K %s %s %s" % (h1_nic.get_devname(),
- offload, "on"))
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload, "on"))
- h2.run("ethtool -K %s %s %s" % (h2_nic.get_devname(),
- offload, "on"))
+ dev_features += " %s %s" % (offload, "on")
+h1.run("ethtool -K %s %s" % (h1_nic.get_devname(), dev_features))
+g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+h2.run("ethtool -K %s %s" % (h2_nic.get_devname(), dev_features))
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
index 024369e..6378e0d 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
@@ -119,13 +119,12 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
ctl.wait(15)
for setting in offload_settings:
+ dev_features = ""
for offload in setting:
- h1.run("ethtool -K %s %s %s" % (h1_nic.get_devname(),
- offload[0], offload[1]))
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload[0], offload[1]))
- h2.run("ethtool -K %s %s %s" % (h2_nic.get_devname(),
- offload[0], offload[1]))
+ dev_features += " %s %s" % (offload[0], offload[1])
+ h1.run("ethtool -K %s %s" % (h1_nic.get_devname(), dev_features))
+ g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+ h2.run("ethtool -K %s %s" % (h2_nic.get_devname(), dev_features))
if ipv in [ 'ipv4', 'both' ]:
g1.run(ping_mod)
@@ -220,10 +219,9 @@ for setting in offload_settings:
server_proc.intr()
#reset offload states
+dev_features = ""
for offload in offloads:
- h1.run("ethtool -K %s %s %s" % (h1_nic.get_devname(),
- offload, "on"))
- g1.run("ethtool -K %s %s %s" % (g1_guestnic.get_devname(),
- offload, "on"))
- h2.run("ethtool -K %s %s %s" % (h2_nic.get_devname(),
- offload, "on"))
+ dev_features += " %s %s" % (offload, "on")
+h1.run("ethtool -K %s %s" % (h1_nic.get_devname(), dev_features))
+g1.run("ethtool -K %s %s" % (g1_guestnic.get_devname(), dev_features))
+h2.run("ethtool -K %s %s" % (h2_nic.get_devname(), dev_features))
--
2.6.2
8 years, 1 month
[PATCH] recipes: ignore irrelevant data in hash for virtual setups
by Jan Tluka
For virtual tests we don't really care about the virtual device MAC address or
it's device name since in automated environments like Beaker they can change
with every run. If this happens the hash that is computed from the
configuration changes and breaks comparison of test results between
individual runs.
This patch adds following entries into hash_ignore:
r'guest\d+\..*hwaddr',
r'host\d+\..*tap\d*\.hwaddr'
r'host\d+\..*tap\d*\.devname'
Signed-off-by: Jan Tluka <jtluka(a)redhat.com>
---
.../phase1/virtual_bridge_2_vlans_over_bond.py | 8 ++++++--
.../phase1/virtual_bridge_vlan_in_guest.py | 8 ++++++--
.../phase1/virtual_bridge_vlan_in_host.py | 8 ++++++--
...l_ovs_bridge_2_vlans_over_active_backup_bond.py | 24 ++++++++++++++++++----
.../phase2/virtual_ovs_bridge_vlan_in_guest.py | 24 ++++++++++++++++++----
.../phase2/virtual_ovs_bridge_vlan_in_host.py | 24 ++++++++++++++++++----
6 files changed, 78 insertions(+), 18 deletions(-)
diff --git a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
index e1c7796..e3ef381 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
@@ -256,7 +256,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
@@ -308,7 +310,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
index 041ce8a..3cad4f3 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
@@ -178,7 +178,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
@@ -227,7 +229,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
index 249e925..bfacb51 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
@@ -178,7 +178,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
@@ -227,7 +229,9 @@ for setting in offload_settings:
hash_ignore=['kernel_release',
'redhat_release',
r'guest\d+\.hostname',
- r'guest\d+\..*hwaddr'])
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
index 4f824a0..5586501 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
@@ -211,7 +211,11 @@ for setting in offload_settings:
"tcp_ipv4_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
@@ -230,7 +234,11 @@ for setting in offload_settings:
"udp_ipv4_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
@@ -259,7 +267,11 @@ for setting in offload_settings:
"tcp_ipv6_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
@@ -278,7 +290,11 @@ for setting in offload_settings:
"udp_ipv6_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
index a2298f7..3406bd9 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
@@ -143,7 +143,11 @@ for setting in offload_settings:
"tcp_ipv4_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
@@ -162,7 +166,11 @@ for setting in offload_settings:
"udp_ipv4_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
@@ -188,7 +196,11 @@ for setting in offload_settings:
"tcp_ipv6_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
@@ -207,7 +219,11 @@ for setting in offload_settings:
"udp_ipv6_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
index 105b84a..61a9e55 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
@@ -141,7 +141,11 @@ for setting in offload_settings:
"tcp_ipv4_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
@@ -160,7 +164,11 @@ for setting in offload_settings:
"udp_ipv4_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
@@ -187,7 +195,11 @@ for setting in offload_settings:
"tcp_ipv6_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_tcp.set_parameter(offload[0], offload[1])
result_tcp.add_tag(product_name)
@@ -206,7 +218,11 @@ for setting in offload_settings:
"udp_ipv6_result",
hash_ignore=[
'kernel_release',
- 'redhat_release'])
+ 'redhat_release',
+ r'guest\d+\.hostname',
+ r'guest\d+\..*hwaddr',
+ r'host\d+\..*tap\d*\.hwaddr',
+ r'host\d+\..*tap\d*\.devname'])
for offload in setting:
result_udp.set_parameter(offload[0], offload[1])
result_udp.add_tag(product_name)
--
2.1.0
8 years, 1 month
[PATCH] recipes: add cpu pinning to regression tests
by Jan Tluka
This patch adds new alias to specify the processor id to use for
netperf/netserver. If the alias is not specified the behavior does not
change. To use it run:
lnst-ctl -A nperf_cpupin=5 run recipes/regression_tests/phase1/3_vlans.xml
Signed-off-by: Jan Tluka <jtluka(a)redhat.com>
---
recipes/regression_tests/phase1/3_vlans.py | 10 +++++++---
recipes/regression_tests/phase1/3_vlans_over_bond.py | 9 +++++++--
recipes/regression_tests/phase1/bonding_test.py | 9 +++++++--
.../phase1/virtual_bridge_vlan_in_guest.py | 11 +++++++----
.../phase1/virtual_bridge_vlan_in_host.py | 11 +++++++----
recipes/regression_tests/phase2/3_vlans_over_team.py | 9 +++++++--
recipes/regression_tests/phase2/team_test.py | 17 +++++++++++++----
.../phase2/virtual_ovs_bridge_vlan_in_guest.py | 13 ++++++++-----
.../phase2/virtual_ovs_bridge_vlan_in_host.py | 11 +++++++----
9 files changed, 70 insertions(+), 30 deletions(-)
diff --git a/recipes/regression_tests/phase1/3_vlans.py b/recipes/regression_tests/phase1/3_vlans.py
index 68974e7..3ce95d2 100644
--- a/recipes/regression_tests/phase1/3_vlans.py
+++ b/recipes/regression_tests/phase1/3_vlans.py
@@ -36,6 +36,7 @@ netperf_duration = int(ctl.get_alias("netperf_duration"))
nperf_reserve = int(ctl.get_alias("nperf_reserve"))
nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
+nperf_cpupin = ctl.get_alias("nperf_cpupin")
m1_phy1 = m1.get_interface("eth1")
m1_phy1.set_mtu(mtu)
@@ -110,14 +111,17 @@ for vlan1 in vlans:
"iface": m1_vlan1.get_ip(1)})
netperf_srv.update_options({"bind": m1_vlan1.get_ip(0)})
-
netperf_srv6.update_options({"bind": m1_vlan1.get_ip(1)})
+ p_opts = "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))
+ if nperf_cpupin:
+ p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
+
netperf_cli_tcp.update_options({"netperf_server": m1_vlan1.get_ip(0),
- "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))})
+ "netperf_opts": p_opts })
netperf_cli_udp.update_options({"netperf_server": m1_vlan1.get_ip(0),
- "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))})
+ "netperf_opts": p_opts })
netperf_cli_tcp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
"netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
diff --git a/recipes/regression_tests/phase1/3_vlans_over_bond.py b/recipes/regression_tests/phase1/3_vlans_over_bond.py
index d382036..31d2e6c 100644
--- a/recipes/regression_tests/phase1/3_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/3_vlans_over_bond.py
@@ -36,6 +36,7 @@ netperf_duration = int(ctl.get_alias("netperf_duration"))
nperf_reserve = int(ctl.get_alias("nperf_reserve"))
nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
+nperf_cpupin = ctl.get_alias("nperf_cpupin")
m1_bond = m1.get_interface("test_bond")
m1_bond.set_mtu(mtu)
@@ -115,11 +116,15 @@ for vlan1 in vlans:
netperf_srv6.update_options({"bind": m1_vlan1.get_ip(1)})
+ p_opts = "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))
+ if nperf_cpupin:
+ p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
+
netperf_cli_tcp.update_options({"netperf_server": m1_vlan1.get_ip(0),
- "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))})
+ "netperf_opts": p_opts })
netperf_cli_udp.update_options({"netperf_server": m1_vlan1.get_ip(0),
- "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))})
+ "netperf_opts": p_opts })
netperf_cli_tcp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
"netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
diff --git a/recipes/regression_tests/phase1/bonding_test.py b/recipes/regression_tests/phase1/bonding_test.py
index 079a8fe..f842a55 100644
--- a/recipes/regression_tests/phase1/bonding_test.py
+++ b/recipes/regression_tests/phase1/bonding_test.py
@@ -36,6 +36,7 @@ netperf_duration = int(ctl.get_alias("netperf_duration"))
nperf_reserve = int(ctl.get_alias("nperf_reserve"))
nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
+nperf_cpupin = ctl.get_alias("nperf_cpupin")
test_if1 = m1.get_interface("test_if")
test_if1.set_mtu(mtu)
@@ -71,6 +72,10 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6",
})
+p_opts = "-i %s -L %s" % (nperf_max_runs, test_if2.get_ip(0))
+if nperf_cpupin:
+ p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
+
netperf_cli_tcp = ctl.get_module("Netperf",
options = {
"role" : "client",
@@ -78,7 +83,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" % (nperf_max_runs, test_if2.get_ip(0))
+ "netperf_opts" : p_opts
})
netperf_cli_udp = ctl.get_module("Netperf",
@@ -88,7 +93,7 @@ netperf_cli_udp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" % (nperf_max_runs, test_if2.get_ip(0))
+ "netperf_opts" : p_opts
})
netperf_cli_tcp6 = ctl.get_module("Netperf",
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
index 81e4a25..041ce8a 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
@@ -36,6 +36,7 @@ netperf_duration = int(ctl.get_alias("netperf_duration"))
nperf_reserve = int(ctl.get_alias("nperf_reserve"))
nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
+nperf_cpupin = ctl.get_alias("nperf_cpupin")
mtu = ctl.get_alias("mtu")
enable_udp_perf = ctl.get_alias("enable_udp_perf")
@@ -75,6 +76,10 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6",
})
+p_opts = "-i %s -L %s" % (nperf_max_runs, h2_vlan10.get_ip(0))
+if nperf_cpupin:
+ p_opts += " -T%s" % nperf_cpupin
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
@@ -82,8 +87,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, h2_vlan10.get_ip(0))
+ "netperf_opts" : p_opts
})
netperf_cli_udp = ctl.get_module("Netperf",
@@ -93,8 +97,7 @@ netperf_cli_udp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, h2_vlan10.get_ip(0))
+ "netperf_opts" : p_opts
})
netperf_cli_tcp6 = ctl.get_module("Netperf",
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
index e5d4927..249e925 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
@@ -36,6 +36,7 @@ netperf_duration = int(ctl.get_alias("netperf_duration"))
nperf_reserve = int(ctl.get_alias("nperf_reserve"))
nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
+nperf_cpupin = ctl.get_alias("nperf_cpupin")
mtu = ctl.get_alias("mtu")
enable_udp_perf = ctl.get_alias("enable_udp_perf")
@@ -74,6 +75,10 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6",
})
+p_opts = "-i %s -L %s" % (nperf_max_runs, h2_vlan10.get_ip(0))
+if nperf_cpupin:
+ p_opts += " -T%s" % nperf_cpupin
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
@@ -81,8 +86,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, h2_vlan10.get_ip(0))
+ "netperf_opts" : p_opts
})
netperf_cli_udp = ctl.get_module("Netperf",
@@ -92,8 +96,7 @@ netperf_cli_udp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, h2_vlan10.get_ip(0))
+ "netperf_opts" : p_opts
})
netperf_cli_tcp6 = ctl.get_module("Netperf",
diff --git a/recipes/regression_tests/phase2/3_vlans_over_team.py b/recipes/regression_tests/phase2/3_vlans_over_team.py
index 28914cc..3f9d589 100644
--- a/recipes/regression_tests/phase2/3_vlans_over_team.py
+++ b/recipes/regression_tests/phase2/3_vlans_over_team.py
@@ -36,6 +36,7 @@ netperf_duration = int(ctl.get_alias("netperf_duration"))
nperf_reserve = int(ctl.get_alias("nperf_reserve"))
nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
+nperf_cpupin = ctl.get_alias("nperf_cpupin")
m1_team = m1.get_interface("test_if")
m1_team.set_mtu(mtu)
@@ -116,11 +117,15 @@ for vlan1 in vlans:
netperf_srv6.update_options({"bind": m1_vlan1.get_ip(1)})
+ p_opts = "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))
+ if nperf_cpupin:
+ p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
+
netperf_cli_tcp.update_options({"netperf_server": m1_vlan1.get_ip(0),
- "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))})
+ "netperf_opts": p_opts})
netperf_cli_udp.update_options({"netperf_server": m1_vlan1.get_ip(0),
- "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))})
+ "netperf_opts": p_opts})
netperf_cli_tcp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
"netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
diff --git a/recipes/regression_tests/phase2/team_test.py b/recipes/regression_tests/phase2/team_test.py
index 9ee0ae0..e8e289b 100644
--- a/recipes/regression_tests/phase2/team_test.py
+++ b/recipes/regression_tests/phase2/team_test.py
@@ -35,6 +35,7 @@ netperf_duration = int(ctl.get_alias("netperf_duration"))
nperf_reserve = int(ctl.get_alias("nperf_reserve"))
nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
+nperf_cpupin = ctl.get_alias("nperf_cpupin")
test_if1 = m1.get_interface("test_if")
test_if1.set_mtu(mtu)
@@ -71,6 +72,10 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6"
})
+p_opts = "-i %s -L %s" % (nperf_max_runs, test_if2.get_ip(0))
+if nperf_cpupin:
+ p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
+
netperf_cli_tcp = ctl.get_module("Netperf",
options = {
"role" : "client",
@@ -78,7 +83,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" % (nperf_max_runs, test_if2.get_ip(0))
+ "netperf_opts" : p_opts
})
netperf_cli_udp = ctl.get_module("Netperf",
@@ -88,7 +93,7 @@ netperf_cli_udp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" % (nperf_max_runs, test_if2.get_ip(0))
+ "netperf_opts" : p_opts
})
netperf_cli_tcp6 = ctl.get_module("Netperf",
@@ -239,11 +244,15 @@ netperf_srv.update_options({"bind" : test_if2.get_ip(0)})
netperf_srv6.update_options({"bind" : test_if2.get_ip(1)})
+p_opts = "-i %s -L %s" % (nperf_max_runs, test_if1.get_ip(0))
+if nperf_cpupin:
+ p_opts += " -T%s,%s" % (nperf_cpupin, nperf_cpupin)
+
netperf_cli_tcp.update_options({"netperf_server" : test_if2.get_ip(0),
- "netperf_opts" : "-i %s -L %s" % (nperf_max_runs, test_if1.get_ip(0))})
+ "netperf_opts" : p_opts})
netperf_cli_udp.update_options({"netperf_server" : test_if2.get_ip(0),
- "netperf_opts" : "-i %s -L %s" % (nperf_max_runs, test_if1.get_ip(0))})
+ "netperf_opts" : p_opts})
netperf_cli_tcp6.update_options({"netperf_server" : test_if2.get_ip(1),
"netperf_opts" : "-i %s -L %s -6" % (nperf_max_runs, test_if1.get_ip(1))})
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
index 9ab7398..a2298f7 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
@@ -36,6 +36,7 @@ netperf_duration = int(ctl.get_alias("netperf_duration"))
nperf_reserve = int(ctl.get_alias("nperf_reserve"))
nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
+nperf_cpupin = ctl.get_alias("nperf_cpupin")
h2_vlan10 = h2.get_interface("vlan10")
g1_vlan10 = g1.get_interface("vlan10")
@@ -72,6 +73,10 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6",
})
+p_opts = "-i %s -L %s" % (nperf_max_runs, h2_vlan10.get_ip(0))
+if nperf_cpupin:
+ p_opts += " -T%s" % nperf_cpupin
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
@@ -79,8 +84,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, h2_vlan10.get_ip(0))
+ "netperf_opts" : p_opts
})
netperf_cli_udp = ctl.get_module("Netperf",
@@ -90,9 +94,8 @@ netperf_cli_udp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, h2_vlan10.get_ip(0))
- })
+ "netperf_opts" : p_opts
+ })
netperf_cli_tcp6 = ctl.get_module("Netperf",
options={
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
index 024369e..105b84a 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
@@ -36,6 +36,7 @@ netperf_duration = int(ctl.get_alias("netperf_duration"))
nperf_reserve = int(ctl.get_alias("nperf_reserve"))
nperf_confidence = ctl.get_alias("nperf_confidence")
nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
+nperf_cpupin = ctl.get_alias("nperf_cpupin")
h2_vlan10 = h2.get_interface("vlan10")
g1_guestnic = g1.get_interface("guestnic")
@@ -71,6 +72,10 @@ netperf_srv6 = ctl.get_module("Netperf",
"netperf_opts" : " -6",
})
+p_opts = "-i %s -L %s" % (nperf_max_runs, h2_vlan10.get_ip(0))
+if nperf_cpupin:
+ p_opts += " -T%s" % nperf_cpupin
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
@@ -78,8 +83,7 @@ netperf_cli_tcp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, h2_vlan10.get_ip(0))
+ "netperf_opts" : p_opts
})
netperf_cli_udp = ctl.get_module("Netperf",
@@ -89,8 +93,7 @@ netperf_cli_udp = ctl.get_module("Netperf",
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" %
- (nperf_max_runs, h2_vlan10.get_ip(0))
+ "netperf_opts" : p_opts
})
netperf_cli_tcp6 = ctl.get_module("Netperf",
--
2.1.0
8 years, 1 month
[PATCH] Machine: don't bring down loopback before configuration
by Jan Tluka
If a user runs both slave and controller on the same machine and has
loopback interface configured in a recipe the controller hangs when the
loopback device is brought down during configuration.
Signed-off-by: Jan Tluka <jtluka(a)redhat.com>
---
lnst/Controller/Machine.py | 2 --
1 file changed, 2 deletions(-)
diff --git a/lnst/Controller/Machine.py b/lnst/Controller/Machine.py
index bdb4d84..ab4dd0c 100644
--- a/lnst/Controller/Machine.py
+++ b/lnst/Controller/Machine.py
@@ -844,8 +844,6 @@ class LoopbackInterface(Interface):
% (self._hwaddr, self._machine.get_id())
raise MachineError(msg)
- self.down()
-
if self._configured:
msg = "Unable to configure interface %s on machine %s. " \
"It has been configured already." % (self.get_id(),
--
2.1.0
8 years, 1 month
[PATCH] NetConfigDevice: fix regression in Loopback device
by Jan Tluka
This is the fix for regression introduced by
commit 83e442284c047e5defc78686d89064b3b45b27f4
NetConfigDevice: don't set loopback device down
NetconfigDeviceGeneric.down() method does also address deconfiguration
and the commit caused that loopback devices kept the configured
addresses after cleanup. The solution is to override the down() method
and do the address removal only.
Signed-off-by: Jan Tluka <jtluka(a)redhat.com>
---
lnst/Slave/NetConfigDevice.py | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/lnst/Slave/NetConfigDevice.py b/lnst/Slave/NetConfigDevice.py
index 1422850..5de8c73 100644
--- a/lnst/Slave/NetConfigDevice.py
+++ b/lnst/Slave/NetConfigDevice.py
@@ -102,8 +102,12 @@ class NetConfigDeviceLoopback(NetConfigDeviceGeneric):
# this might have an unpredictable impact on further testing.
# In case of non-root namespace leaving loopback device up is not
# a problem since the namespace will get destroyed after recipe is
- # finished
- pass
+ # finished. So, we will remove the configured addresses only
+ config = self._dev_config
+ if "addresses" in config:
+ for address in config["addresses"]:
+ exec_cmd("ip addr del %s dev %s" % (address, config["name"]),
+ die_on_err=False)
class NetConfigDeviceBond(NetConfigDeviceGeneric):
_modulename = "bonding"
--
2.1.0
8 years, 1 month
[PATCH v3 1/4] regression-tests: Replace deprecated methods in phase1 baremetal tests
by Jiri Prochazka
This commit replaces InterfaceAPI methods get_ip() and get_devname() with
HostAPI methods which are supported and recommended.
Signed-off-by: Jiri Prochazka <jprochaz(a)redhat.com>
---
recipes/regression_tests/phase1/3_vlans.py | 40 ++++++++++---------
.../regression_tests/phase1/3_vlans_over_bond.py | 46 ++++++++++++----------
recipes/regression_tests/phase1/bonding_test.py | 36 ++++++++---------
recipes/regression_tests/phase1/simple_ping.py | 11 ++++--
4 files changed, 71 insertions(+), 62 deletions(-)
diff --git a/recipes/regression_tests/phase1/3_vlans.py b/recipes/regression_tests/phase1/3_vlans.py
index 2007dc4..68974e7 100644
--- a/recipes/regression_tests/phase1/3_vlans.py
+++ b/recipes/regression_tests/phase1/3_vlans.py
@@ -99,37 +99,40 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
})
for vlan1 in vlans:
+ m1_vlan1 = m1.get_interface(vlan1)
for vlan2 in vlans:
- ping_mod.update_options({"addr": m2.get_ip(vlan2, 0),
- "iface": m1.get_devname(vlan1)})
+ m2_vlan2 = m2.get_interface(vlan2)
- ping_mod6.update_options({"addr": m2.get_ip(vlan2, 1),
- "iface": m1.get_ip(vlan1, 1)})
+ ping_mod.update_options({"addr": m2_vlan2.get_ip(0),
+ "iface": m1_vlan1.get_devname()})
- netperf_srv.update_options({"bind": m1.get_ip(vlan1, 0)})
+ ping_mod6.update_options({"addr": m2_vlan2.get_ip(1),
+ "iface": m1_vlan1.get_ip(1)})
- netperf_srv6.update_options({"bind": m1.get_ip(vlan1, 1)})
+ netperf_srv.update_options({"bind": m1_vlan1.get_ip(0)})
- netperf_cli_tcp.update_options({"netperf_server": m1.get_ip(vlan1, 0),
- "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2.get_ip(vlan1, 0))})
+ netperf_srv6.update_options({"bind": m1_vlan1.get_ip(1)})
- netperf_cli_udp.update_options({"netperf_server": m1.get_ip(vlan1, 0),
- "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2.get_ip(vlan1, 0))})
+ netperf_cli_tcp.update_options({"netperf_server": m1_vlan1.get_ip(0),
+ "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))})
- netperf_cli_tcp6.update_options({"netperf_server": m1.get_ip(vlan1, 1),
- "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2.get_ip(vlan1, 1))})
+ netperf_cli_udp.update_options({"netperf_server": m1_vlan1.get_ip(0),
+ "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))})
- netperf_cli_udp6.update_options({"netperf_server": m1.get_ip(vlan1, 1),
- "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2.get_ip(vlan1, 1))})
+ netperf_cli_tcp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
+ "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
+
+ netperf_cli_udp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
+ "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
if vlan1 == vlan2:
# These tests should pass
# Ping between same VLANs
for setting in offload_settings:
for offload in setting:
- m1.run("ethtool -K %s %s %s" % (m1.get_devname("eth1"),
+ m1.run("ethtool -K %s %s %s" % (m1_phy1.get_devname(),
offload[0], offload[1]))
- m2.run("ethtool -K %s %s %s" % (m2.get_devname("eth1"),
+ m2.run("ethtool -K %s %s %s" % (m2_phy1.get_devname(),
offload[0], offload[1]))
if ipv in [ 'ipv4', 'both' ]:
@@ -234,7 +237,6 @@ for vlan1 in vlans:
perf_api.save_result(result_udp)
srv_proc.intr()
-
# These tests should fail
# Ping across different VLAN
else:
@@ -246,7 +248,7 @@ for vlan1 in vlans:
#reset offload states
for offload in offloads:
- m1.run("ethtool -K %s %s %s" % (m1.get_devname("eth1"),
+ m1.run("ethtool -K %s %s %s" % (m1_phy1.get_devname(),
offload, "on"))
- m2.run("ethtool -K %s %s %s" % (m2.get_devname("eth1"),
+ m2.run("ethtool -K %s %s %s" % (m2_phy1.get_devname(),
offload, "on"))
diff --git a/recipes/regression_tests/phase1/3_vlans_over_bond.py b/recipes/regression_tests/phase1/3_vlans_over_bond.py
index 79c4b4d..d382036 100644
--- a/recipes/regression_tests/phase1/3_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/3_vlans_over_bond.py
@@ -39,6 +39,8 @@ nperf_max_runs = int(ctl.get_alias("nperf_max_runs"))
m1_bond = m1.get_interface("test_bond")
m1_bond.set_mtu(mtu)
+m1_phy1 = m1.get_interface("eth1")
+m1_phy2 = m1.get_interface("eth2")
m2_phy1 = m2.get_interface("eth1")
m2_phy1.set_mtu(mtu)
@@ -99,28 +101,31 @@ netperf_cli_udp6 = ctl.get_module("Netperf",
})
for vlan1 in vlans:
+ m1_vlan1 = m1.get_interface(vlan1)
for vlan2 in vlans:
- ping_mod.update_options({"addr": m2.get_ip(vlan2, 0),
- "iface": m1.get_devname(vlan1)})
+ m2_vlan2 = m2.get_interface(vlan2)
- ping_mod6.update_options({"addr": m2.get_ip(vlan2, 1),
- "iface": m1.get_ip(vlan1, 1)})
+ ping_mod.update_options({"addr": m2_vlan2.get_ip(0),
+ "iface": m1_vlan1.get_devname()})
- netperf_srv.update_options({"bind": m1.get_ip(vlan1, 0)})
+ ping_mod6.update_options({"addr": m2_vlan2.get_ip(1),
+ "iface": m1_vlan1.get_ip(1)})
- netperf_srv6.update_options({"bind": m1.get_ip(vlan1, 1)})
+ netperf_srv.update_options({"bind": m1_vlan1.get_ip(0)})
- netperf_cli_tcp.update_options({"netperf_server": m1.get_ip(vlan1, 0),
- "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2.get_ip(vlan1, 0))})
+ netperf_srv6.update_options({"bind": m1_vlan1.get_ip(1)})
- netperf_cli_udp.update_options({"netperf_server": m1.get_ip(vlan1, 0),
- "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2.get_ip(vlan1, 0))})
+ netperf_cli_tcp.update_options({"netperf_server": m1_vlan1.get_ip(0),
+ "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))})
- netperf_cli_tcp6.update_options({"netperf_server": m1.get_ip(vlan1, 1),
- "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2.get_ip(vlan1, 1))})
+ netperf_cli_udp.update_options({"netperf_server": m1_vlan1.get_ip(0),
+ "netperf_opts": "-i %s -L %s" % (nperf_max_runs, m2_vlan2.get_ip(0))})
- netperf_cli_udp6.update_options({"netperf_server": m1.get_ip(vlan1, 1),
- "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2.get_ip(vlan1, 1))})
+ netperf_cli_tcp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
+ "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
+
+ netperf_cli_udp6.update_options({"netperf_server": m1_vlan1.get_ip(1),
+ "netperf_opts": "-i %s -L %s -6" % (nperf_max_runs, m2_vlan2.get_ip(1))})
if vlan1 == vlan2:
# These tests should pass
@@ -128,11 +133,11 @@ for vlan1 in vlans:
for setting in offload_settings:
#apply offload setting
for offload in setting:
- m1.run("ethtool -K %s %s %s" % (m1.get_devname("eth1"),
+ m1.run("ethtool -K %s %s %s" % (m1_phy1.get_devname(),
offload[0], offload[1]))
- m1.run("ethtool -K %s %s %s" % (m1.get_devname("eth2"),
+ m1.run("ethtool -K %s %s %s" % (m1_phy2.get_devname(),
offload[0], offload[1]))
- m2.run("ethtool -K %s %s %s" % (m2.get_devname("eth1"),
+ m2.run("ethtool -K %s %s %s" % (m2_phy1.get_devname(),
offload[0], offload[1]))
if ipv in [ 'ipv4', 'both' ]:
@@ -238,7 +243,6 @@ for vlan1 in vlans:
perf_api.save_result(result_udp)
srv_proc.intr()
-
# These tests should fail
# Ping across different VLAN
else:
@@ -250,9 +254,9 @@ for vlan1 in vlans:
#reset offload states
for offload in offloads:
- m1.run("ethtool -K %s %s %s" % (m1.get_devname("eth1"),
+ m1.run("ethtool -K %s %s %s" % (m1_phy1.get_devname(),
offload, "on"))
- m1.run("ethtool -K %s %s %s" % (m1.get_devname("eth2"),
+ m1.run("ethtool -K %s %s %s" % (m1_phy2.get_devname(),
offload, "on"))
- m2.run("ethtool -K %s %s %s" % (m2.get_devname("eth1"),
+ m2.run("ethtool -K %s %s %s" % (m2_phy1.get_devname(),
offload, "on"))
diff --git a/recipes/regression_tests/phase1/bonding_test.py b/recipes/regression_tests/phase1/bonding_test.py
index 18659d1..079a8fe 100644
--- a/recipes/regression_tests/phase1/bonding_test.py
+++ b/recipes/regression_tests/phase1/bonding_test.py
@@ -44,83 +44,83 @@ test_if2.set_mtu(mtu)
ping_mod = ctl.get_module("IcmpPing",
options={
- "addr" : m2.get_ip("test_if", 0),
+ "addr" : test_if2.get_ip(0),
"count" : 100,
- "iface" : m1.get_devname("test_if"),
+ "iface" : test_if1.get_devname(),
"interval" : 0.1
})
ping_mod6 = ctl.get_module("Icmp6Ping",
options={
- "addr" : m2.get_ip("test_if", 1),
+ "addr" : test_if2.get_ip(1),
"count" : 100,
- "iface" : m1.get_devname("test_if"),
+ "iface" : test_if1.get_devname(),
"interval" : 0.1
})
netperf_srv = ctl.get_module("Netperf",
options = {
"role" : "server",
- "bind" : m1.get_ip("test_if", 0)
+ "bind" : test_if1.get_ip(0)
})
netperf_srv6 = ctl.get_module("Netperf",
options={
"role" : "server",
- "bind" : m1.get_ip("test_if", 1),
+ "bind" : test_if1.get_ip(1),
"netperf_opts" : " -6",
})
netperf_cli_tcp = ctl.get_module("Netperf",
options = {
"role" : "client",
- "netperf_server" : m1.get_ip("test_if", 0),
+ "netperf_server" : test_if1.get_ip(0),
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" % (nperf_max_runs, m2.get_ip("test_if", 0))
+ "netperf_opts" : "-i %s -L %s" % (nperf_max_runs, test_if2.get_ip(0))
})
netperf_cli_udp = ctl.get_module("Netperf",
options = {
"role" : "client",
- "netperf_server" : m1.get_ip("test_if", 0),
+ "netperf_server" : test_if1.get_ip(0),
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
- "netperf_opts" : "-i %s -L %s" % (nperf_max_runs, m2.get_ip("test_if", 0))
+ "netperf_opts" : "-i %s -L %s" % (nperf_max_runs, test_if2.get_ip(0))
})
netperf_cli_tcp6 = ctl.get_module("Netperf",
options={
"role" : "client",
"netperf_server" :
- m1.get_ip("test_if", 1),
+ test_if1.get_ip(1),
"duration" : netperf_duration,
"testname" : "TCP_STREAM",
"confidence" : nperf_confidence,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, m2.get_ip("test_if", 1))
+ "-i %s -L %s -6" % (nperf_max_runs, test_if2.get_ip(1))
})
netperf_cli_udp6 = ctl.get_module("Netperf",
options={
"role" : "client",
"netperf_server" :
- m1.get_ip("test_if", 1),
+ test_if1.get_ip(1),
"duration" : netperf_duration,
"testname" : "UDP_STREAM",
"confidence" : nperf_confidence,
"netperf_opts" :
- "-i %s -L %s -6" % (nperf_max_runs, m2.get_ip("test_if", 1))
+ "-i %s -L %s -6" % (nperf_max_runs, test_if2.get_ip(1))
})
ctl.wait(15)
for setting in offload_settings:
for offload in setting:
- m1.run("ethtool -K %s %s %s" % (m1.get_devname("test_if"),
+ m1.run("ethtool -K %s %s %s" % (test_if1.get_devname(),
offload[0], offload[1]))
- m2.run("ethtool -K %s %s %s" % (m2.get_devname("test_if"),
+ m2.run("ethtool -K %s %s %s" % (test_if2.get_devname(),
offload[0], offload[1]))
if ipv in [ 'ipv4', 'both' ]:
@@ -217,7 +217,7 @@ for setting in offload_settings:
#reset offload states
for offload in offloads:
- m1.run("ethtool -K %s %s %s" % (m1.get_devname("test_if"),
+ m1.run("ethtool -K %s %s %s" % (test_if1.get_devname(),
offload, "on"))
- m2.run("ethtool -K %s %s %s" % (m2.get_devname("test_if"),
+ m2.run("ethtool -K %s %s %s" % (test_if2.get_devname(),
offload, "on"))
diff --git a/recipes/regression_tests/phase1/simple_ping.py b/recipes/regression_tests/phase1/simple_ping.py
index f9e5837..3591402 100644
--- a/recipes/regression_tests/phase1/simple_ping.py
+++ b/recipes/regression_tests/phase1/simple_ping.py
@@ -6,20 +6,23 @@ hostB = ctl.get_host("machine2")
hostA.sync_resources(modules=["Icmp6Ping", "IcmpPing"])
hostB.sync_resources(modules=["Icmp6Ping", "IcmpPing"])
+hostA_testiface = hostA.get_interface("testiface")
+hostB_testiface = hostB.get_interface("testiface")
+
ping_mod = ctl.get_module("IcmpPing",
options={
- "addr": hostB.get_ip("testiface", 0),
+ "addr": hostB_testiface.get_ip(0),
"count": 100,
"interval": 0.2,
- "iface" : hostA.get_devname("testiface"),
+ "iface" : hostA_testiface.get_devname(),
"limit_rate": 90})
ping_mod6 = ctl.get_module("Icmp6Ping",
options={
- "addr": hostB.get_ip("testiface", 1),
+ "addr": hostB_testiface.get_ip(1),
"count": 100,
"interval": 0.2,
- "iface" : hostA.get_ip("testiface", 1),
+ "iface" : hostA_testiface.get_ip(1),
"limit_rate": 90})
ctl.wait(15)
--
2.4.3
8 years, 1 month