* [dts] [PATCH 0/3] Add RRC support in test suites
@ 2015-07-07 9:37 Michael Qiu
2015-07-07 9:37 ` [dts] [PATCH 1/3] tests: Add RRC support with jumbo frame Michael Qiu
` (3 more replies)
0 siblings, 4 replies; 13+ messages in thread
From: Michael Qiu @ 2015-07-07 9:37 UTC (permalink / raw)
To: dts
jumbo frame/scatter/vlan enable RRC support.
Michael Qiu (3):
tests: Add RRC support with jumbo frame
tests: Add RRC support in suit scatter
tests: Add RRC support with vlan suite
tests/TestSuite_jumboframes.py | 15 +++++++++++
tests/TestSuite_scatter.py | 15 +++++------
tests/TestSuite_vlan.py | 56 +++++++++++++++++++++++++-----------------
3 files changed, 57 insertions(+), 29 deletions(-)
--
1.9.3
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dts] [PATCH 1/3] tests: Add RRC support with jumbo frame
2015-07-07 9:37 [dts] [PATCH 0/3] Add RRC support in test suites Michael Qiu
@ 2015-07-07 9:37 ` Michael Qiu
2015-07-07 9:37 ` [dts] [PATCH 2/3] tests: Add RRC support in suit scatter Michael Qiu
` (2 subsequent siblings)
3 siblings, 0 replies; 13+ messages in thread
From: Michael Qiu @ 2015-07-07 9:37 UTC (permalink / raw)
To: dts
this patch make jumbo frame suit support RRC
Signed-off-by: Michael Qiu <michael.qiu@intel.com>
---
tests/TestSuite_jumboframes.py | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/tests/TestSuite_jumboframes.py b/tests/TestSuite_jumboframes.py
index 4f34c13..81c8b23 100644
--- a/tests/TestSuite_jumboframes.py
+++ b/tests/TestSuite_jumboframes.py
@@ -136,6 +136,9 @@ class TestJumboframes(TestCase):
frame on testpmd app.
"""
self.pmdout.start_testpmd("Default", "--max-pkt-len=%d" % (ETHER_STANDARD_MTU))
+ if self.nic == "redrockcanyou":
+ self.dut.send_expect("set promisc all off", "testpmd> ")
+ self.dut.send_expect("set fwd mac", "testpmd> ")
self.dut.send_expect("start", "testpmd> ")
self.jumboframes_send_packet(ETHER_STANDARD_MTU - 1)
@@ -150,6 +153,9 @@ class TestJumboframes(TestCase):
jumbo frame support.
"""
self.pmdout.start_testpmd("Default", "--max-pkt-len=%d" % (ETHER_STANDARD_MTU))
+ if self.nic == "redrockcanyou":
+ self.dut.send_expect("set promisc all off", "testpmd> ")
+ self.dut.send_expect("set fwd mac", "testpmd> ")
self.dut.send_expect("start", "testpmd> ")
self.jumboframes_send_packet(ETHER_STANDARD_MTU + 1, False)
@@ -163,6 +169,9 @@ class TestJumboframes(TestCase):
packet forwrding should be support correct.
"""
self.pmdout.start_testpmd("Default", "--max-pkt-len=%s" % (ETHER_JUMBO_FRAME_MTU))
+ if self.nic == "redrockcanyou":
+ self.dut.send_expect("set promisc all off", "testpmd> ")
+ self.dut.send_expect("set fwd mac", "testpmd> ")
self.dut.send_expect("start", "testpmd> ")
self.jumboframes_send_packet(1517)
@@ -177,6 +186,9 @@ class TestJumboframes(TestCase):
packet can be forwarded correct.
"""
self.pmdout.start_testpmd("Default", "--max-pkt-len=%s" % (ETHER_JUMBO_FRAME_MTU))
+ if self.nic == "redrockcanyou":
+ self.dut.send_expect("set promisc all off", "testpmd> ")
+ self.dut.send_expect("set fwd mac", "testpmd> ")
self.dut.send_expect("start", "testpmd> ")
self.jumboframes_send_packet(ETHER_STANDARD_MTU + 1)
@@ -192,6 +204,9 @@ class TestJumboframes(TestCase):
packet which the length bigger than MTU can not be forwarded.
"""
self.pmdout.start_testpmd("Default", "--max-pkt-len=%s" % (ETHER_JUMBO_FRAME_MTU))
+ if self.nic == "redrockcanyou":
+ self.dut.send_expect("set promisc all off", "testpmd> ")
+ self.dut.send_expect("set fwd mac", "testpmd> ")
self.dut.send_expect("start", "testpmd> ")
self.jumboframes_send_packet(ETHER_JUMBO_FRAME_MTU + 1, False)
--
1.9.3
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dts] [PATCH 2/3] tests: Add RRC support in suit scatter
2015-07-07 9:37 [dts] [PATCH 0/3] Add RRC support in test suites Michael Qiu
2015-07-07 9:37 ` [dts] [PATCH 1/3] tests: Add RRC support with jumbo frame Michael Qiu
@ 2015-07-07 9:37 ` Michael Qiu
2015-07-08 0:57 ` Liu, Yong
2015-07-07 9:38 ` [dts] [PATCH 3/3] tests: Add RRC support with vlan suite Michael Qiu
2015-07-08 8:51 ` [dts] [PATCH 0/3 v2] Add RRC support in test suites Michael Qiu
3 siblings, 1 reply; 13+ messages in thread
From: Michael Qiu @ 2015-07-07 9:37 UTC (permalink / raw)
To: dts
Add RRC support in suit scatter
Signed-off-by: Michael Qiu <michael.qiu>
---
tests/TestSuite_scatter.py | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/tests/TestSuite_scatter.py b/tests/TestSuite_scatter.py
index 643fe4a..130898f 100644
--- a/tests/TestSuite_scatter.py
+++ b/tests/TestSuite_scatter.py
@@ -62,10 +62,11 @@ class TestScatter(TestCase):
"""
sport = self.tester.get_local_port(sPortid)
sintf = self.tester.get_interface(sport)
- smac = self.dut.get_mac_address(sPortid)
+ smac = self.tester.get_mac(sport)
+ dmac = self.dut.get_mac_address(sPortid)
rport = self.tester.get_local_port(rPortid)
rintf = self.tester.get_interface(rport)
- if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
+ if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
self.tester.send_expect("ifconfig %s mtu 9000" % sintf, "#")
self.tester.send_expect("ifconfig %s mtu 9000" % rintf, "#")
@@ -79,10 +80,10 @@ class TestScatter(TestCase):
self.tester.scapy_foreground()
self.tester.scapy_append(
- 'sendp([Ether(dst="%s")/IP(len=%s)/Raw(load="\x50"*%s)], iface="%s")' % (smac, pktlen, padding, sintf))
+ 'sendp([Ether(src="%s",dst="%s")/IP(len=%s)/Raw(load="\x50"*%s)], iface="%s")' % (smac, dmac,pktlen, padding, sintf))
self.tester.scapy_execute()
res = self.tester.scapy_get_result()
- if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
+ if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
self.tester.send_expect("ifconfig %s mtu 1500" % sintf, "#")
self.tester.send_expect("ifconfig %s mtu 1500" % sintf, "#")
return res
@@ -103,7 +104,7 @@ class TestScatter(TestCase):
portMask = dts.create_mask(dutPorts[:2])
# set the mbuf size to 1024
- if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
+ if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
out = self.pmdout.start_testpmd(
"1S/2C/2T", "--mbcache=200 --mbuf-size=2048 --portmask=%s --max-pkt-len=9000" % portMask)
else:
@@ -111,12 +112,12 @@ class TestScatter(TestCase):
"1S/2C/2T", "--mbcache=200 --mbuf-size=1024 --portmask=%s" % portMask)
self.verify("Error" not in out, "launch error 1")
- if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
+ if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
self.dut.send_expect("set fwd mac", "testpmd> ", 120)
self.dut.send_expect("start", "testpmd> ")
for offset in [-1, 0, 1, 4, 5]:
- if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
+ if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
ret = self.scatter_pktgen_send_packet(
dutPorts[0], dutPorts[1], 2048 + offset)
else:
--
1.9.3
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dts] [PATCH 3/3] tests: Add RRC support with vlan suite
2015-07-07 9:37 [dts] [PATCH 0/3] Add RRC support in test suites Michael Qiu
2015-07-07 9:37 ` [dts] [PATCH 1/3] tests: Add RRC support with jumbo frame Michael Qiu
2015-07-07 9:37 ` [dts] [PATCH 2/3] tests: Add RRC support in suit scatter Michael Qiu
@ 2015-07-07 9:38 ` Michael Qiu
2015-07-08 1:43 ` Liu, Yong
2015-07-08 8:51 ` [dts] [PATCH 0/3 v2] Add RRC support in test suites Michael Qiu
3 siblings, 1 reply; 13+ messages in thread
From: Michael Qiu @ 2015-07-07 9:38 UTC (permalink / raw)
To: dts
Add RRC support with vlan suite
Signed-off-by: Michael Qiu <michael.qiu@intel.com>
---
tests/TestSuite_vlan.py | 56 ++++++++++++++++++++++++++++++-------------------
1 file changed, 34 insertions(+), 22 deletions(-)
diff --git a/tests/TestSuite_vlan.py b/tests/TestSuite_vlan.py
index fba68e3..6f443de 100644
--- a/tests/TestSuite_vlan.py
+++ b/tests/TestSuite_vlan.py
@@ -74,12 +74,13 @@ class TestVlan(TestCase):
self.dut.send_expect("set verbose 1", "testpmd> ")
out = self.dut.send_expect("set fwd mac", "testpmd> ")
- if self.nic in ["fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
+ if self.nic in ["fortville_eagle", "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
self.dut.send_expect("set promisc all off", "testpmd> ")
self.dut.send_expect("vlan set filter on %s"%dutRxPortId, "testpmd> ")
self.dut.send_expect("vlan set strip off %s" % dutRxPortId, "testpmd> ")
self.verify('Set mac packet forwarding mode' in out, "set fwd rxonly error")
+ self.vlan = 51
def start_tcpdump(self):
port = self.tester.get_local_port(dutTxPortId)
@@ -98,16 +99,17 @@ class TestVlan(TestCase):
# The package stream : testTxPort->dutRxPort->dutTxport->testRxPort
port = self.tester.get_local_port(dutRxPortId)
txItf = self.tester.get_interface(port)
+ self.smac = self.tester.get_mac(port)
port = self.tester.get_local_port(dutTxPortId)
rxItf = self.tester.get_interface(port)
# the package dect mac must is dut tx port id when the port promisc is off
- mac = self.dut.get_mac_address(dutRxPortId)
+ self.dmac = self.dut.get_mac_address(dutRxPortId)
# FIXME send a burst with only num packet
- self.tester.scapy_append('sendp([Ether(dst="%s")/Dot1Q(vlan=%s)/IP(len=46)], iface="%s")' % (mac, vid, txItf))
+ self.tester.scapy_append('sendp([Ether(src="%s",dst="%s")/Dot1Q(vlan=%s)/IP(len=46)], iface="%s")' % (self.smac, self.dmac, vid, txItf))
self.tester.scapy_execute()
def set_up(self):
@@ -120,16 +122,19 @@ class TestVlan(TestCase):
Enable receipt of VLAN packets
"""
- self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd> ")
+ if self.nic == "redrockcanyou" :
+ print "fm10k not support this case\n"
+ return
+ self.dut.send_expect("rx_vlan add %d %s" % (self.vlan, dutRxPortId), "testpmd> ")
self.dut.send_expect("vlan set strip off %s" % dutRxPortId, "testpmd> ")
self.dut.send_expect("start", "testpmd> ", 120)
out = self.dut.send_expect("show port info %s" % dutRxPortId, "testpmd> ", 20)
self.start_tcpdump()
- self.vlan_send_packet(1)
+ self.vlan_send_packet(self.vlan)
#out = self.tester.scapy_get_result()
out = self.get_tcpdump_package()
- self.verify("vlan 1" in out, "Wrong vlan:" + out)
+ self.verify("vlan %d" % self.vlan in out, "Wrong vlan:" + out)
self.dut.send_expect("stop", "testpmd> ")
@@ -140,13 +145,15 @@ class TestVlan(TestCase):
"""
- self.dut.send_expect("rx_vlan rm 1 %s" % dutRxPortId, "testpmd> ")
+ self.dut.send_expect("rx_vlan rm %d %s" % (self.vlan, dutRxPortId), "testpmd> ")
self.dut.send_expect("start", "testpmd> ", 120)
self.start_tcpdump()
- self.vlan_send_packet(1)
+ self.vlan_send_packet(self.vlan)
out = self.get_tcpdump_package()
- self.verify("vlan 1" not in out, "Wrong vlan:" + out)
+ # fm10k switch will redirect package if not send to nic
+ if (not((self.nic == "redrockcanyou") and ("%s > %s"%(self.smac, self.dmac) in out))):
+ self.verify("vlan %d" % self.vlan not in out, "Wrong vlan:" + out)
out = self.dut.send_expect("stop", "testpmd> ")
@@ -154,45 +161,48 @@ class TestVlan(TestCase):
def test_vlan_strip_config_on(self):
self.dut.send_expect("vlan set strip on %s" % dutRxPortId, "testpmd> ", 20)
- self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd> ", 20)
+ self.dut.send_expect("rx_vlan add %d %s" % (self.vlan, dutRxPortId), "testpmd> ", 20)
out = self.dut.send_expect("show port info %s" % dutRxPortId, "testpmd> ", 20)
self.verify("strip on" in out, "Wrong strip:" + out)
self.dut.send_expect("start", "testpmd> ", 120)
self.start_tcpdump()
- self.vlan_send_packet(1)
+ self.vlan_send_packet(self.vlan)
out = self.get_tcpdump_package()
- self.verify("vlan 1" not in out, "Wrong vlan:" + out)
+ self.verify("vlan %d" % self.vlan not in out, "Wrong vlan:" + out)
out = self.dut.send_expect("quit", "#", 120)
def test_vlan_strip_config_off(self):
+ if self.nic == "redrockcanyou" :
+ print "fm10k not support this case\n"
+ return
self.dut.send_expect("vlan set strip off %s" % dutRxPortId, "testpmd> ", 20)
- self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd> ", 20)
+ self.dut.send_expect("rx_vlan add %d %s" % (self.vlan, dutRxPortId), "testpmd> ", 20)
out = self.dut.send_expect("show port info %s" % dutRxPortId, "testpmd> ", 20)
self.verify("strip off" in out, "Wrong strip:" + out)
self.dut.send_expect("set nbport 2", "testpmd> ")
self.dut.send_expect("start", "testpmd> ", 120)
self.start_tcpdump()
- self.vlan_send_packet(1)
+ self.vlan_send_packet(self.vlan)
out = self.get_tcpdump_package()
- self.verify("vlan 1" in out, "Wrong strip vlan:" + out)
+ self.verify("vlan %d" % self.vlan in out, "Wrong strip vlan:" + out)
out = self.dut.send_expect("stop", "testpmd> ", 120)
- def FAILING_test_vlan_enable_vlan_insertion(self):
+ def test_vlan_enable_vlan_insertion(self):
"""
Enable VLAN header insertion in transmitted packets
"""
- port = self.tester.get_local_port(valports[0])
+ port = self.tester.get_local_port(dutTxPortId,)
intf = self.tester.get_interface(port)
self.dut.send_expect("set nbport 2", "testpmd> ")
- self.dut.send_expect("tx_vlan set 1 %s" % valports[0], "testpmd> ")
+ self.dut.send_expect("tx_vlan set %d %s" % (self.vlan, dutTxPortId), "testpmd> ")
- self.dut.send_expect("set promisc all on", "testpmd> ")
+ #self.dut.send_expect("set promisc all on", "testpmd> ")
if self.nic == 'hartwell':
- self.dut.send_expect("vlan set strip on %s" % valports[0], "testpmd> ")
+ self.dut.send_expect("vlan set strip on %s" % dutRxPortId, "testpmd> ")
self.tester.scapy_background()
self.tester.scapy_append('p = sniff(iface="%s", count=1, timeout=5)' % intf)
@@ -205,8 +215,9 @@ class TestVlan(TestCase):
time.sleep(2)
out = self.tester.scapy_get_result()
- self.verify("vlan=1L" in out, "Wrong vlan: " + out)
- if self.nic in ["fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
+ self.verify("vlan=%dL" % self.vlan in out, "Wrong vlan: " + out)
+ if self.nic in ["fortville_eagle", "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
+ self.dut.send_expect("tx_vlan reset %s" % dutTxPortId, "testpmd> ", 30)
self.dut.send_expect("stop", "testpmd> ", 30)
else:
self.dut.send_expect("quit", "# ", 30)
@@ -217,6 +228,7 @@ class TestVlan(TestCase):
"""
pass
+
def tear_down_all(self):
"""
Run after each test suite.
--
1.9.3
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dts] [PATCH 2/3] tests: Add RRC support in suit scatter
2015-07-07 9:37 ` [dts] [PATCH 2/3] tests: Add RRC support in suit scatter Michael Qiu
@ 2015-07-08 0:57 ` Liu, Yong
2015-07-08 1:49 ` Qiu, Michael
0 siblings, 1 reply; 13+ messages in thread
From: Liu, Yong @ 2015-07-08 0:57 UTC (permalink / raw)
To: Qiu, Michael, dts
Michael,
Look like scatter feature only validated on Niantic, Fortville, RRC these three types of card.
We can check NIC type in set_up_all function and not need these duplicated checking code.
> -----Original Message-----
> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Michael Qiu
> Sent: Tuesday, July 07, 2015 5:38 PM
> To: dts@dpdk.org
> Subject: [dts] [PATCH 2/3] tests: Add RRC support in suit scatter
>
> Add RRC support in suit scatter
>
> Signed-off-by: Michael Qiu <michael.qiu>
> ---
> tests/TestSuite_scatter.py | 15 ++++++++-------
> 1 file changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/tests/TestSuite_scatter.py b/tests/TestSuite_scatter.py
> index 643fe4a..130898f 100644
> --- a/tests/TestSuite_scatter.py
> +++ b/tests/TestSuite_scatter.py
> @@ -62,10 +62,11 @@ class TestScatter(TestCase):
> """
> sport = self.tester.get_local_port(sPortid)
> sintf = self.tester.get_interface(sport)
> - smac = self.dut.get_mac_address(sPortid)
> + smac = self.tester.get_mac(sport)
> + dmac = self.dut.get_mac_address(sPortid)
> rport = self.tester.get_local_port(rPortid)
> rintf = self.tester.get_interface(rport)
> - if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
> "fortville_spirit_single"]:
> + if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
> "fortville_spirit_single", "redrockcanyou"]:
> self.tester.send_expect("ifconfig %s mtu 9000" % sintf, "#")
> self.tester.send_expect("ifconfig %s mtu 9000" % rintf, "#")
>
> @@ -79,10 +80,10 @@ class TestScatter(TestCase):
>
> self.tester.scapy_foreground()
> self.tester.scapy_append(
> - 'sendp([Ether(dst="%s")/IP(len=%s)/Raw(load="\x50"*%s)],
> iface="%s")' % (smac, pktlen, padding, sintf))
> +
> 'sendp([Ether(src="%s",dst="%s")/IP(len=%s)/Raw(load="\x50"*%s)],
> iface="%s")' % (smac, dmac,pktlen, padding, sintf))
> self.tester.scapy_execute()
> res = self.tester.scapy_get_result()
> - if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
> "fortville_spirit_single"]:
> + if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
> "fortville_spirit_single", "redrockcanyou"]:
> self.tester.send_expect("ifconfig %s mtu 1500" % sintf, "#")
> self.tester.send_expect("ifconfig %s mtu 1500" % sintf, "#")
> return res
> @@ -103,7 +104,7 @@ class TestScatter(TestCase):
> portMask = dts.create_mask(dutPorts[:2])
>
> # set the mbuf size to 1024
> - if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
> "fortville_spirit_single"]:
> + if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
> "fortville_spirit_single", "redrockcanyou"]:
> out = self.pmdout.start_testpmd(
> "1S/2C/2T", "--mbcache=200 --mbuf-size=2048 --portmask=%s
> --max-pkt-len=9000" % portMask)
> else:
> @@ -111,12 +112,12 @@ class TestScatter(TestCase):
> "1S/2C/2T", "--mbcache=200 --mbuf-size=1024 --
> portmask=%s" % portMask)
> self.verify("Error" not in out, "launch error 1")
>
> - if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
> "fortville_spirit_single"]:
> + if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
> "fortville_spirit_single", "redrockcanyou"]:
> self.dut.send_expect("set fwd mac", "testpmd> ", 120)
> self.dut.send_expect("start", "testpmd> ")
>
> for offset in [-1, 0, 1, 4, 5]:
> - if self.nic in ["niantic", "fortville_eagle",
> "fortville_spirit", "fortville_spirit_single"]:
> + if self.nic in ["niantic", "fortville_eagle",
> "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
> ret = self.scatter_pktgen_send_packet(
> dutPorts[0], dutPorts[1], 2048 + offset)
> else:
> --
> 1.9.3
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dts] [PATCH 3/3] tests: Add RRC support with vlan suite
2015-07-07 9:38 ` [dts] [PATCH 3/3] tests: Add RRC support with vlan suite Michael Qiu
@ 2015-07-08 1:43 ` Liu, Yong
2015-07-08 1:54 ` Qiu, Michael
0 siblings, 1 reply; 13+ messages in thread
From: Liu, Yong @ 2015-07-08 1:43 UTC (permalink / raw)
To: Qiu, Michael, dts
Hi Michael,
Some comments below.
> -----Original Message-----
> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Michael Qiu
> Sent: Tuesday, July 07, 2015 5:38 PM
> To: dts@dpdk.org
> Subject: [dts] [PATCH 3/3] tests: Add RRC support with vlan suite
>
> Add RRC support with vlan suite
>
> Signed-off-by: Michael Qiu <michael.qiu@intel.com>
> ---
> tests/TestSuite_vlan.py | 56 ++++++++++++++++++++++++++++++--------------
> -----
> 1 file changed, 34 insertions(+), 22 deletions(-)
>
> diff --git a/tests/TestSuite_vlan.py b/tests/TestSuite_vlan.py
> index fba68e3..6f443de 100644
> --- a/tests/TestSuite_vlan.py
> +++ b/tests/TestSuite_vlan.py
> @@ -74,12 +74,13 @@ class TestVlan(TestCase):
> self.dut.send_expect("set verbose 1", "testpmd> ")
> out = self.dut.send_expect("set fwd mac", "testpmd> ")
>
> - if self.nic in ["fortville_eagle", "fortville_spirit",
> "fortville_spirit_single"]:
> + if self.nic in ["fortville_eagle", "fortville_spirit",
> "fortville_spirit_single", "redrockcanyou"]:
> self.dut.send_expect("set promisc all off", "testpmd> ")
> self.dut.send_expect("vlan set filter on %s"%dutRxPortId,
> "testpmd> ")
>
> self.dut.send_expect("vlan set strip off %s" % dutRxPortId,
> "testpmd> ")
> self.verify('Set mac packet forwarding mode' in out, "set fwd
> rxonly error")
> + self.vlan = 51
>
Is there any specified reason to set vlan to 51? We used to use value 1 to check vlan feature.
> def start_tcpdump(self):
> port = self.tester.get_local_port(dutTxPortId)
> @@ -98,16 +99,17 @@ class TestVlan(TestCase):
> # The package stream : testTxPort->dutRxPort->dutTxport-
> >testRxPort
> port = self.tester.get_local_port(dutRxPortId)
> txItf = self.tester.get_interface(port)
> + self.smac = self.tester.get_mac(port)
>
> port = self.tester.get_local_port(dutTxPortId)
> rxItf = self.tester.get_interface(port)
>
> # the package dect mac must is dut tx port id when the port
> promisc is off
> - mac = self.dut.get_mac_address(dutRxPortId)
> + self.dmac = self.dut.get_mac_address(dutRxPortId)
>
> # FIXME send a burst with only num packet
>
> -
> self.tester.scapy_append('sendp([Ether(dst="%s")/Dot1Q(vlan=%s)/IP(len=46)
> ], iface="%s")' % (mac, vid, txItf))
> +
> self.tester.scapy_append('sendp([Ether(src="%s",dst="%s")/Dot1Q(vlan=%s)/I
> P(len=46)], iface="%s")' % (self.smac, self.dmac, vid, txItf))
>
> self.tester.scapy_execute()
> def set_up(self):
> @@ -120,16 +122,19 @@ class TestVlan(TestCase):
> Enable receipt of VLAN packets
> """
>
> - self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd>
> ")
> + if self.nic == "redrockcanyou" :
> + print "fm10k not support this case\n"
> + return
> + self.dut.send_expect("rx_vlan add %d %s" % (self.vlan,
> dutRxPortId), "testpmd> ")
> self.dut.send_expect("vlan set strip off %s" % dutRxPortId,
> "testpmd> ")
> self.dut.send_expect("start", "testpmd> ", 120)
> out = self.dut.send_expect("show port info %s" % dutRxPortId,
> "testpmd> ", 20)
>
> self.start_tcpdump()
> - self.vlan_send_packet(1)
> + self.vlan_send_packet(self.vlan)
> #out = self.tester.scapy_get_result()
> out = self.get_tcpdump_package()
> - self.verify("vlan 1" in out, "Wrong vlan:" + out)
> + self.verify("vlan %d" % self.vlan in out, "Wrong vlan:" + out)
>
> self.dut.send_expect("stop", "testpmd> ")
>
> @@ -140,13 +145,15 @@ class TestVlan(TestCase):
> """
>
>
> - self.dut.send_expect("rx_vlan rm 1 %s" % dutRxPortId, "testpmd> ")
> + self.dut.send_expect("rx_vlan rm %d %s" % (self.vlan,
> dutRxPortId), "testpmd> ")
> self.dut.send_expect("start", "testpmd> ", 120)
> self.start_tcpdump()
> - self.vlan_send_packet(1)
> + self.vlan_send_packet(self.vlan)
>
> out = self.get_tcpdump_package()
> - self.verify("vlan 1" not in out, "Wrong vlan:" + out)
> + # fm10k switch will redirect package if not send to nic
> + if (not((self.nic == "redrockcanyou") and ("%s > %s"%(self.smac,
> self.dmac) in out))):
> + self.verify("vlan %d" % self.vlan not in out, "Wrong vlan:" +
> out)
>
> out = self.dut.send_expect("stop", "testpmd> ")
>
> @@ -154,45 +161,48 @@ class TestVlan(TestCase):
> def test_vlan_strip_config_on(self):
>
> self.dut.send_expect("vlan set strip on %s" % dutRxPortId,
> "testpmd> ", 20)
> - self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd>
> ", 20)
> + self.dut.send_expect("rx_vlan add %d %s" % (self.vlan,
> dutRxPortId), "testpmd> ", 20)
> out = self.dut.send_expect("show port info %s" % dutRxPortId,
> "testpmd> ", 20)
> self.verify("strip on" in out, "Wrong strip:" + out)
>
> self.dut.send_expect("start", "testpmd> ", 120)
> self.start_tcpdump()
> - self.vlan_send_packet(1)
> + self.vlan_send_packet(self.vlan)
> out = self.get_tcpdump_package()
> - self.verify("vlan 1" not in out, "Wrong vlan:" + out)
> + self.verify("vlan %d" % self.vlan not in out, "Wrong vlan:" + out)
> out = self.dut.send_expect("quit", "#", 120)
>
> def test_vlan_strip_config_off(self):
>
> + if self.nic == "redrockcanyou" :
> + print "fm10k not support this case\n"
> + return
We should use "print dts.RED()" to emphasize this situation.
> self.dut.send_expect("vlan set strip off %s" % dutRxPortId,
> "testpmd> ", 20)
> - self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd>
> ", 20)
> + self.dut.send_expect("rx_vlan add %d %s" % (self.vlan,
> dutRxPortId), "testpmd> ", 20)
> out = self.dut.send_expect("show port info %s" % dutRxPortId,
> "testpmd> ", 20)
> self.verify("strip off" in out, "Wrong strip:" + out)
> self.dut.send_expect("set nbport 2", "testpmd> ")
> self.dut.send_expect("start", "testpmd> ", 120)
> self.start_tcpdump()
> - self.vlan_send_packet(1)
> + self.vlan_send_packet(self.vlan)
> out = self.get_tcpdump_package()
> - self.verify("vlan 1" in out, "Wrong strip vlan:" + out)
> + self.verify("vlan %d" % self.vlan in out, "Wrong strip vlan:" +
> out)
> out = self.dut.send_expect("stop", "testpmd> ", 120)
>
> - def FAILING_test_vlan_enable_vlan_insertion(self):
> + def test_vlan_enable_vlan_insertion(self):
> """
> Enable VLAN header insertion in transmitted packets
> """
>
> - port = self.tester.get_local_port(valports[0])
> + port = self.tester.get_local_port(dutTxPortId,)
> intf = self.tester.get_interface(port)
>
> self.dut.send_expect("set nbport 2", "testpmd> ")
> - self.dut.send_expect("tx_vlan set 1 %s" % valports[0], "testpmd>
> ")
> + self.dut.send_expect("tx_vlan set %d %s" % (self.vlan,
> dutTxPortId), "testpmd> ")
>
> - self.dut.send_expect("set promisc all on", "testpmd> ")
> + #self.dut.send_expect("set promisc all on", "testpmd> ")
Please remove this line.
> if self.nic == 'hartwell':
> - self.dut.send_expect("vlan set strip on %s" % valports[0],
> "testpmd> ")
'hartwell' not defined in settings.py, here is topy issue or there's new NIC need support in DTS?
> + self.dut.send_expect("vlan set strip on %s" % dutRxPortId,
> "testpmd> ")
>
> self.tester.scapy_background()
> self.tester.scapy_append('p = sniff(iface="%s", count=1,
> timeout=5)' % intf)
> @@ -205,8 +215,9 @@ class TestVlan(TestCase):
> time.sleep(2)
>
> out = self.tester.scapy_get_result()
> - self.verify("vlan=1L" in out, "Wrong vlan: " + out)
> - if self.nic in ["fortville_eagle", "fortville_spirit",
> "fortville_spirit_single"]:
> + self.verify("vlan=%dL" % self.vlan in out, "Wrong vlan: " + out)
> + if self.nic in ["fortville_eagle", "fortville_spirit",
> "fortville_spirit_single", "redrockcanyou"]:
> + self.dut.send_expect("tx_vlan reset %s" % dutTxPortId,
> "testpmd> ", 30)
> self.dut.send_expect("stop", "testpmd> ", 30)
> else:
> self.dut.send_expect("quit", "# ", 30)
> @@ -217,6 +228,7 @@ class TestVlan(TestCase):
> """
> pass
>
> +
> def tear_down_all(self):
> """
> Run after each test suite.
> --
> 1.9.3
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dts] [PATCH 2/3] tests: Add RRC support in suit scatter
2015-07-08 0:57 ` Liu, Yong
@ 2015-07-08 1:49 ` Qiu, Michael
0 siblings, 0 replies; 13+ messages in thread
From: Qiu, Michael @ 2015-07-08 1:49 UTC (permalink / raw)
To: Liu, Yong, dts
On 7/8/2015 8:57 AM, Liu, Yong wrote:
> Michael,
> Look like scatter feature only validated on Niantic, Fortville, RRC these three types of card.
> We can check NIC type in set_up_all function and not need these duplicated checking code.
It make sense, I will rework for V2
Thanks,
Michael
>
>> -----Original Message-----
>> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Michael Qiu
>> Sent: Tuesday, July 07, 2015 5:38 PM
>> To: dts@dpdk.org
>> Subject: [dts] [PATCH 2/3] tests: Add RRC support in suit scatter
>>
>> Add RRC support in suit scatter
>>
>> Signed-off-by: Michael Qiu <michael.qiu>
>> ---
>> tests/TestSuite_scatter.py | 15 ++++++++-------
>> 1 file changed, 8 insertions(+), 7 deletions(-)
>>
>> diff --git a/tests/TestSuite_scatter.py b/tests/TestSuite_scatter.py
>> index 643fe4a..130898f 100644
>> --- a/tests/TestSuite_scatter.py
>> +++ b/tests/TestSuite_scatter.py
>> @@ -62,10 +62,11 @@ class TestScatter(TestCase):
>> """
>> sport = self.tester.get_local_port(sPortid)
>> sintf = self.tester.get_interface(sport)
>> - smac = self.dut.get_mac_address(sPortid)
>> + smac = self.tester.get_mac(sport)
>> + dmac = self.dut.get_mac_address(sPortid)
>> rport = self.tester.get_local_port(rPortid)
>> rintf = self.tester.get_interface(rport)
>> - if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single"]:
>> + if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single", "redrockcanyou"]:
>> self.tester.send_expect("ifconfig %s mtu 9000" % sintf, "#")
>> self.tester.send_expect("ifconfig %s mtu 9000" % rintf, "#")
>>
>> @@ -79,10 +80,10 @@ class TestScatter(TestCase):
>>
>> self.tester.scapy_foreground()
>> self.tester.scapy_append(
>> - 'sendp([Ether(dst="%s")/IP(len=%s)/Raw(load="\x50"*%s)],
>> iface="%s")' % (smac, pktlen, padding, sintf))
>> +
>> 'sendp([Ether(src="%s",dst="%s")/IP(len=%s)/Raw(load="\x50"*%s)],
>> iface="%s")' % (smac, dmac,pktlen, padding, sintf))
>> self.tester.scapy_execute()
>> res = self.tester.scapy_get_result()
>> - if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single"]:
>> + if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single", "redrockcanyou"]:
>> self.tester.send_expect("ifconfig %s mtu 1500" % sintf, "#")
>> self.tester.send_expect("ifconfig %s mtu 1500" % sintf, "#")
>> return res
>> @@ -103,7 +104,7 @@ class TestScatter(TestCase):
>> portMask = dts.create_mask(dutPorts[:2])
>>
>> # set the mbuf size to 1024
>> - if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single"]:
>> + if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single", "redrockcanyou"]:
>> out = self.pmdout.start_testpmd(
>> "1S/2C/2T", "--mbcache=200 --mbuf-size=2048 --portmask=%s
>> --max-pkt-len=9000" % portMask)
>> else:
>> @@ -111,12 +112,12 @@ class TestScatter(TestCase):
>> "1S/2C/2T", "--mbcache=200 --mbuf-size=1024 --
>> portmask=%s" % portMask)
>> self.verify("Error" not in out, "launch error 1")
>>
>> - if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single"]:
>> + if self.nic in ["niantic", "fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single", "redrockcanyou"]:
>> self.dut.send_expect("set fwd mac", "testpmd> ", 120)
>> self.dut.send_expect("start", "testpmd> ")
>>
>> for offset in [-1, 0, 1, 4, 5]:
>> - if self.nic in ["niantic", "fortville_eagle",
>> "fortville_spirit", "fortville_spirit_single"]:
>> + if self.nic in ["niantic", "fortville_eagle",
>> "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
>> ret = self.scatter_pktgen_send_packet(
>> dutPorts[0], dutPorts[1], 2048 + offset)
>> else:
>> --
>> 1.9.3
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dts] [PATCH 3/3] tests: Add RRC support with vlan suite
2015-07-08 1:43 ` Liu, Yong
@ 2015-07-08 1:54 ` Qiu, Michael
0 siblings, 0 replies; 13+ messages in thread
From: Qiu, Michael @ 2015-07-08 1:54 UTC (permalink / raw)
To: Liu, Yong, dts
On 7/8/2015 9:43 AM, Liu, Yong wrote:
> Hi Michael,
> Some comments below.
>
>> -----Original Message-----
>> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Michael Qiu
>> Sent: Tuesday, July 07, 2015 5:38 PM
>> To: dts@dpdk.org
>> Subject: [dts] [PATCH 3/3] tests: Add RRC support with vlan suite
>>
>> Add RRC support with vlan suite
>>
>> Signed-off-by: Michael Qiu <michael.qiu@intel.com>
>> ---
>> tests/TestSuite_vlan.py | 56 ++++++++++++++++++++++++++++++--------------
>> -----
>> 1 file changed, 34 insertions(+), 22 deletions(-)
>>
>> diff --git a/tests/TestSuite_vlan.py b/tests/TestSuite_vlan.py
>> index fba68e3..6f443de 100644
>> --- a/tests/TestSuite_vlan.py
>> +++ b/tests/TestSuite_vlan.py
>> @@ -74,12 +74,13 @@ class TestVlan(TestCase):
>> self.dut.send_expect("set verbose 1", "testpmd> ")
>> out = self.dut.send_expect("set fwd mac", "testpmd> ")
>>
>> - if self.nic in ["fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single"]:
>> + if self.nic in ["fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single", "redrockcanyou"]:
>> self.dut.send_expect("set promisc all off", "testpmd> ")
>> self.dut.send_expect("vlan set filter on %s"%dutRxPortId,
>> "testpmd> ")
>>
>> self.dut.send_expect("vlan set strip off %s" % dutRxPortId,
>> "testpmd> ")
>> self.verify('Set mac packet forwarding mode' in out, "set fwd
>> rxonly error")
>> + self.vlan = 51
>>
> Is there any specified reason to set vlan to 51? We used to use value 1 to check vlan feature.
Because RRC default will be set vlan 1, so if we change to 51 will
verify it correctly.
Thanks,
Michael
>
>> def start_tcpdump(self):
>> port = self.tester.get_local_port(dutTxPortId)
>> @@ -98,16 +99,17 @@ class TestVlan(TestCase):
>> # The package stream : testTxPort->dutRxPort->dutTxport-
>>> testRxPort
>> port = self.tester.get_local_port(dutRxPortId)
>> txItf = self.tester.get_interface(port)
>> + self.smac = self.tester.get_mac(port)
>>
>> port = self.tester.get_local_port(dutTxPortId)
>> rxItf = self.tester.get_interface(port)
>>
>> # the package dect mac must is dut tx port id when the port
>> promisc is off
>> - mac = self.dut.get_mac_address(dutRxPortId)
>> + self.dmac = self.dut.get_mac_address(dutRxPortId)
>>
>> # FIXME send a burst with only num packet
>>
>> -
>> self.tester.scapy_append('sendp([Ether(dst="%s")/Dot1Q(vlan=%s)/IP(len=46)
>> ], iface="%s")' % (mac, vid, txItf))
>> +
>> self.tester.scapy_append('sendp([Ether(src="%s",dst="%s")/Dot1Q(vlan=%s)/I
>> P(len=46)], iface="%s")' % (self.smac, self.dmac, vid, txItf))
>>
>> self.tester.scapy_execute()
>> def set_up(self):
>> @@ -120,16 +122,19 @@ class TestVlan(TestCase):
>> Enable receipt of VLAN packets
>> """
>>
>> - self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd>
>> ")
>> + if self.nic == "redrockcanyou" :
>> + print "fm10k not support this case\n"
>> + return
>> + self.dut.send_expect("rx_vlan add %d %s" % (self.vlan,
>> dutRxPortId), "testpmd> ")
>> self.dut.send_expect("vlan set strip off %s" % dutRxPortId,
>> "testpmd> ")
>> self.dut.send_expect("start", "testpmd> ", 120)
>> out = self.dut.send_expect("show port info %s" % dutRxPortId,
>> "testpmd> ", 20)
>>
>> self.start_tcpdump()
>> - self.vlan_send_packet(1)
>> + self.vlan_send_packet(self.vlan)
>> #out = self.tester.scapy_get_result()
>> out = self.get_tcpdump_package()
>> - self.verify("vlan 1" in out, "Wrong vlan:" + out)
>> + self.verify("vlan %d" % self.vlan in out, "Wrong vlan:" + out)
>>
>> self.dut.send_expect("stop", "testpmd> ")
>>
>> @@ -140,13 +145,15 @@ class TestVlan(TestCase):
>> """
>>
>>
>> - self.dut.send_expect("rx_vlan rm 1 %s" % dutRxPortId, "testpmd> ")
>> + self.dut.send_expect("rx_vlan rm %d %s" % (self.vlan,
>> dutRxPortId), "testpmd> ")
>> self.dut.send_expect("start", "testpmd> ", 120)
>> self.start_tcpdump()
>> - self.vlan_send_packet(1)
>> + self.vlan_send_packet(self.vlan)
>>
>> out = self.get_tcpdump_package()
>> - self.verify("vlan 1" not in out, "Wrong vlan:" + out)
>> + # fm10k switch will redirect package if not send to nic
>> + if (not((self.nic == "redrockcanyou") and ("%s > %s"%(self.smac,
>> self.dmac) in out))):
>> + self.verify("vlan %d" % self.vlan not in out, "Wrong vlan:" +
>> out)
>>
>> out = self.dut.send_expect("stop", "testpmd> ")
>>
>> @@ -154,45 +161,48 @@ class TestVlan(TestCase):
>> def test_vlan_strip_config_on(self):
>>
>> self.dut.send_expect("vlan set strip on %s" % dutRxPortId,
>> "testpmd> ", 20)
>> - self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd>
>> ", 20)
>> + self.dut.send_expect("rx_vlan add %d %s" % (self.vlan,
>> dutRxPortId), "testpmd> ", 20)
>> out = self.dut.send_expect("show port info %s" % dutRxPortId,
>> "testpmd> ", 20)
>> self.verify("strip on" in out, "Wrong strip:" + out)
>>
>> self.dut.send_expect("start", "testpmd> ", 120)
>> self.start_tcpdump()
>> - self.vlan_send_packet(1)
>> + self.vlan_send_packet(self.vlan)
>> out = self.get_tcpdump_package()
>> - self.verify("vlan 1" not in out, "Wrong vlan:" + out)
>> + self.verify("vlan %d" % self.vlan not in out, "Wrong vlan:" + out)
>> out = self.dut.send_expect("quit", "#", 120)
>>
>> def test_vlan_strip_config_off(self):
>>
>> + if self.nic == "redrockcanyou" :
>> + print "fm10k not support this case\n"
>> + return
> We should use "print dts.RED()" to emphasize this situation.
>
>> self.dut.send_expect("vlan set strip off %s" % dutRxPortId,
>> "testpmd> ", 20)
>> - self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd>
>> ", 20)
>> + self.dut.send_expect("rx_vlan add %d %s" % (self.vlan,
>> dutRxPortId), "testpmd> ", 20)
>> out = self.dut.send_expect("show port info %s" % dutRxPortId,
>> "testpmd> ", 20)
>> self.verify("strip off" in out, "Wrong strip:" + out)
>> self.dut.send_expect("set nbport 2", "testpmd> ")
>> self.dut.send_expect("start", "testpmd> ", 120)
>> self.start_tcpdump()
>> - self.vlan_send_packet(1)
>> + self.vlan_send_packet(self.vlan)
>> out = self.get_tcpdump_package()
>> - self.verify("vlan 1" in out, "Wrong strip vlan:" + out)
>> + self.verify("vlan %d" % self.vlan in out, "Wrong strip vlan:" +
>> out)
>> out = self.dut.send_expect("stop", "testpmd> ", 120)
>>
>> - def FAILING_test_vlan_enable_vlan_insertion(self):
>> + def test_vlan_enable_vlan_insertion(self):
>> """
>> Enable VLAN header insertion in transmitted packets
>> """
>>
>> - port = self.tester.get_local_port(valports[0])
>> + port = self.tester.get_local_port(dutTxPortId,)
>> intf = self.tester.get_interface(port)
>>
>> self.dut.send_expect("set nbport 2", "testpmd> ")
>> - self.dut.send_expect("tx_vlan set 1 %s" % valports[0], "testpmd>
>> ")
>> + self.dut.send_expect("tx_vlan set %d %s" % (self.vlan,
>> dutTxPortId), "testpmd> ")
>>
>> - self.dut.send_expect("set promisc all on", "testpmd> ")
>> + #self.dut.send_expect("set promisc all on", "testpmd> ")
> Please remove this line.
>
>> if self.nic == 'hartwell':
>> - self.dut.send_expect("vlan set strip on %s" % valports[0],
>> "testpmd> ")
> 'hartwell' not defined in settings.py, here is topy issue or there's new NIC need support in DTS?
>
>> + self.dut.send_expect("vlan set strip on %s" % dutRxPortId,
>> "testpmd> ")
>>
>> self.tester.scapy_background()
>> self.tester.scapy_append('p = sniff(iface="%s", count=1,
>> timeout=5)' % intf)
>> @@ -205,8 +215,9 @@ class TestVlan(TestCase):
>> time.sleep(2)
>>
>> out = self.tester.scapy_get_result()
>> - self.verify("vlan=1L" in out, "Wrong vlan: " + out)
>> - if self.nic in ["fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single"]:
>> + self.verify("vlan=%dL" % self.vlan in out, "Wrong vlan: " + out)
>> + if self.nic in ["fortville_eagle", "fortville_spirit",
>> "fortville_spirit_single", "redrockcanyou"]:
>> + self.dut.send_expect("tx_vlan reset %s" % dutTxPortId,
>> "testpmd> ", 30)
>> self.dut.send_expect("stop", "testpmd> ", 30)
>> else:
>> self.dut.send_expect("quit", "# ", 30)
>> @@ -217,6 +228,7 @@ class TestVlan(TestCase):
>> """
>> pass
>>
>> +
>> def tear_down_all(self):
>> """
>> Run after each test suite.
>> --
>> 1.9.3
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dts] [PATCH 0/3 v2] Add RRC support in test suites
2015-07-07 9:37 [dts] [PATCH 0/3] Add RRC support in test suites Michael Qiu
` (2 preceding siblings ...)
2015-07-07 9:38 ` [dts] [PATCH 3/3] tests: Add RRC support with vlan suite Michael Qiu
@ 2015-07-08 8:51 ` Michael Qiu
2015-07-08 8:51 ` [dts] [PATCH 1/3 v2] tests: Add RRC support with jumbo frame Michael Qiu
` (3 more replies)
3 siblings, 4 replies; 13+ messages in thread
From: Michael Qiu @ 2015-07-08 8:51 UTC (permalink / raw)
To: dts
jumbo frame/scatter/vlan enable RRC support.
Michael Qiu (3):
tests: Add RRC support with jumbo frame
tests: Add RRC support in suit scatter
tests: Add RRC support with vlan suite
tests/TestSuite_jumboframes.py | 15 +++++++++++
tests/TestSuite_scatter.py | 15 +++++------
tests/TestSuite_vlan.py | 56 +++++++++++++++++++++++++-----------------
3 files changed, 57 insertions(+), 29 deletions(-)
--
1.9.3
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dts] [PATCH 1/3 v2] tests: Add RRC support with jumbo frame
2015-07-08 8:51 ` [dts] [PATCH 0/3 v2] Add RRC support in test suites Michael Qiu
@ 2015-07-08 8:51 ` Michael Qiu
2015-07-08 8:51 ` [dts] [PATCH 2/3 v2] tests: Add RRC support in suite scatter Michael Qiu
` (2 subsequent siblings)
3 siblings, 0 replies; 13+ messages in thread
From: Michael Qiu @ 2015-07-08 8:51 UTC (permalink / raw)
To: dts
this patch make jumbo frame suit support RRC
Signed-off-by: Michael Qiu <michael.qiu@intel.com>
---
V2 ---> V1:
remove tab indent
tests/TestSuite_jumboframes.py | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/tests/TestSuite_jumboframes.py b/tests/TestSuite_jumboframes.py
index 4f34c13..c5c70b9 100644
--- a/tests/TestSuite_jumboframes.py
+++ b/tests/TestSuite_jumboframes.py
@@ -136,6 +136,9 @@ class TestJumboframes(TestCase):
frame on testpmd app.
"""
self.pmdout.start_testpmd("Default", "--max-pkt-len=%d" % (ETHER_STANDARD_MTU))
+ if self.nic == "redrockcanyou":
+ self.dut.send_expect("set promisc all off", "testpmd> ")
+ self.dut.send_expect("set fwd mac", "testpmd> ")
self.dut.send_expect("start", "testpmd> ")
self.jumboframes_send_packet(ETHER_STANDARD_MTU - 1)
@@ -150,6 +153,9 @@ class TestJumboframes(TestCase):
jumbo frame support.
"""
self.pmdout.start_testpmd("Default", "--max-pkt-len=%d" % (ETHER_STANDARD_MTU))
+ if self.nic == "redrockcanyou":
+ self.dut.send_expect("set promisc all off", "testpmd> ")
+ self.dut.send_expect("set fwd mac", "testpmd> ")
self.dut.send_expect("start", "testpmd> ")
self.jumboframes_send_packet(ETHER_STANDARD_MTU + 1, False)
@@ -163,6 +169,9 @@ class TestJumboframes(TestCase):
packet forwrding should be support correct.
"""
self.pmdout.start_testpmd("Default", "--max-pkt-len=%s" % (ETHER_JUMBO_FRAME_MTU))
+ if self.nic == "redrockcanyou":
+ self.dut.send_expect("set promisc all off", "testpmd> ")
+ self.dut.send_expect("set fwd mac", "testpmd> ")
self.dut.send_expect("start", "testpmd> ")
self.jumboframes_send_packet(1517)
@@ -177,6 +186,9 @@ class TestJumboframes(TestCase):
packet can be forwarded correct.
"""
self.pmdout.start_testpmd("Default", "--max-pkt-len=%s" % (ETHER_JUMBO_FRAME_MTU))
+ if self.nic == "redrockcanyou":
+ self.dut.send_expect("set promisc all off", "testpmd> ")
+ self.dut.send_expect("set fwd mac", "testpmd> ")
self.dut.send_expect("start", "testpmd> ")
self.jumboframes_send_packet(ETHER_STANDARD_MTU + 1)
@@ -192,6 +204,9 @@ class TestJumboframes(TestCase):
packet which the length bigger than MTU can not be forwarded.
"""
self.pmdout.start_testpmd("Default", "--max-pkt-len=%s" % (ETHER_JUMBO_FRAME_MTU))
+ if self.nic == "redrockcanyou":
+ self.dut.send_expect("set promisc all off", "testpmd> ")
+ self.dut.send_expect("set fwd mac", "testpmd> ")
self.dut.send_expect("start", "testpmd> ")
self.jumboframes_send_packet(ETHER_JUMBO_FRAME_MTU + 1, False)
--
1.9.3
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dts] [PATCH 2/3 v2] tests: Add RRC support in suite scatter
2015-07-08 8:51 ` [dts] [PATCH 0/3 v2] Add RRC support in test suites Michael Qiu
2015-07-08 8:51 ` [dts] [PATCH 1/3 v2] tests: Add RRC support with jumbo frame Michael Qiu
@ 2015-07-08 8:51 ` Michael Qiu
2015-07-08 8:51 ` [dts] [PATCH 3/3 v2] tests: Add RRC support with vlan suite Michael Qiu
2015-07-09 2:26 ` [dts] [PATCH 0/3 v2] Add RRC support in test suites Liu, Yong
3 siblings, 0 replies; 13+ messages in thread
From: Michael Qiu @ 2015-07-08 8:51 UTC (permalink / raw)
To: dts
Add RRC support in suite scatter
Signed-off-by: Michael Qiu <michael.qiu>
---
v2 --> v1:
mv nic tpye to setup function
tests/TestSuite_scatter.py | 38 ++++++++++++++++----------------------
1 file changed, 16 insertions(+), 22 deletions(-)
diff --git a/tests/TestSuite_scatter.py b/tests/TestSuite_scatter.py
index 643fe4a..abb1a08 100644
--- a/tests/TestSuite_scatter.py
+++ b/tests/TestSuite_scatter.py
@@ -55,6 +55,10 @@ class TestScatter(TestCase):
# Verify that enough ports are available
self.verify(len(dutPorts) >= 2, "Insufficient ports")
self.pmdout = PmdOutput(self.dut)
+ if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
+ self.mbsize = 2048
+ else:
+ self.mbsize = 1024
def scatter_pktgen_send_packet(self, sPortid, rPortid, pktsize, num=1):
"""
@@ -62,12 +66,12 @@ class TestScatter(TestCase):
"""
sport = self.tester.get_local_port(sPortid)
sintf = self.tester.get_interface(sport)
- smac = self.dut.get_mac_address(sPortid)
+ smac = self.tester.get_mac(sport)
+ dmac = self.dut.get_mac_address(sPortid)
rport = self.tester.get_local_port(rPortid)
rintf = self.tester.get_interface(rport)
- if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
- self.tester.send_expect("ifconfig %s mtu 9000" % sintf, "#")
- self.tester.send_expect("ifconfig %s mtu 9000" % rintf, "#")
+ self.tester.send_expect("ifconfig %s mtu 9000" % sintf, "#")
+ self.tester.send_expect("ifconfig %s mtu 9000" % rintf, "#")
self.tester.scapy_background()
self.tester.scapy_append(
@@ -79,12 +83,11 @@ class TestScatter(TestCase):
self.tester.scapy_foreground()
self.tester.scapy_append(
- 'sendp([Ether(dst="%s")/IP(len=%s)/Raw(load="\x50"*%s)], iface="%s")' % (smac, pktlen, padding, sintf))
+ 'sendp([Ether(src="%s",dst="%s")/IP(len=%s)/Raw(load="\x50"*%s)], iface="%s")' % (smac, dmac,pktlen, padding, sintf))
self.tester.scapy_execute()
res = self.tester.scapy_get_result()
- if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
- self.tester.send_expect("ifconfig %s mtu 1500" % sintf, "#")
- self.tester.send_expect("ifconfig %s mtu 1500" % sintf, "#")
+ self.tester.send_expect("ifconfig %s mtu 1500" % sintf, "#")
+ self.tester.send_expect("ifconfig %s mtu 1500" % sintf, "#")
return res
def set_up(self):
@@ -103,25 +106,16 @@ class TestScatter(TestCase):
portMask = dts.create_mask(dutPorts[:2])
# set the mbuf size to 1024
- if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
- out = self.pmdout.start_testpmd(
- "1S/2C/2T", "--mbcache=200 --mbuf-size=2048 --portmask=%s --max-pkt-len=9000" % portMask)
- else:
- out = self.pmdout.start_testpmd(
- "1S/2C/2T", "--mbcache=200 --mbuf-size=1024 --portmask=%s" % portMask)
+ out = self.pmdout.start_testpmd(
+ "1S/2C/2T", "--mbcache=200 --mbuf-size=%d --portmask=%s --max-pkt-len=9000" % (self.mbsize, portMask))
self.verify("Error" not in out, "launch error 1")
- if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
- self.dut.send_expect("set fwd mac", "testpmd> ", 120)
+ self.dut.send_expect("set fwd mac", "testpmd> ", 120)
self.dut.send_expect("start", "testpmd> ")
for offset in [-1, 0, 1, 4, 5]:
- if self.nic in ["niantic", "fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
- ret = self.scatter_pktgen_send_packet(
- dutPorts[0], dutPorts[1], 2048 + offset)
- else:
- ret = self.scatter_pktgen_send_packet(
- dutPorts[0], dutPorts[1], 1024 + offset)
+ ret = self.scatter_pktgen_send_packet(
+ dutPorts[0], dutPorts[1], self.mbsize + offset)
self.verify("load='P" in ret, "packet receive error")
self.dut.send_expect("stop", "testpmd> ")
--
1.9.3
^ permalink raw reply [flat|nested] 13+ messages in thread
* [dts] [PATCH 3/3 v2] tests: Add RRC support with vlan suite
2015-07-08 8:51 ` [dts] [PATCH 0/3 v2] Add RRC support in test suites Michael Qiu
2015-07-08 8:51 ` [dts] [PATCH 1/3 v2] tests: Add RRC support with jumbo frame Michael Qiu
2015-07-08 8:51 ` [dts] [PATCH 2/3 v2] tests: Add RRC support in suite scatter Michael Qiu
@ 2015-07-08 8:51 ` Michael Qiu
2015-07-09 2:26 ` [dts] [PATCH 0/3 v2] Add RRC support in test suites Liu, Yong
3 siblings, 0 replies; 13+ messages in thread
From: Michael Qiu @ 2015-07-08 8:51 UTC (permalink / raw)
To: dts
Add RRC support with vlan suite
Signed-off-by: Michael Qiu <michael.qiu@intel.com>
---
v2 --> v1:
remove hartwell support
remove usless comments
tests/TestSuite_vlan.py | 57 +++++++++++++++++++++++++++----------------------
1 file changed, 32 insertions(+), 25 deletions(-)
diff --git a/tests/TestSuite_vlan.py b/tests/TestSuite_vlan.py
index fba68e3..fc6f2cb 100644
--- a/tests/TestSuite_vlan.py
+++ b/tests/TestSuite_vlan.py
@@ -74,12 +74,13 @@ class TestVlan(TestCase):
self.dut.send_expect("set verbose 1", "testpmd> ")
out = self.dut.send_expect("set fwd mac", "testpmd> ")
- if self.nic in ["fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
+ if self.nic in ["fortville_eagle", "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
self.dut.send_expect("set promisc all off", "testpmd> ")
self.dut.send_expect("vlan set filter on %s"%dutRxPortId, "testpmd> ")
self.dut.send_expect("vlan set strip off %s" % dutRxPortId, "testpmd> ")
self.verify('Set mac packet forwarding mode' in out, "set fwd rxonly error")
+ self.vlan = 51
def start_tcpdump(self):
port = self.tester.get_local_port(dutTxPortId)
@@ -98,16 +99,17 @@ class TestVlan(TestCase):
# The package stream : testTxPort->dutRxPort->dutTxport->testRxPort
port = self.tester.get_local_port(dutRxPortId)
txItf = self.tester.get_interface(port)
+ self.smac = self.tester.get_mac(port)
port = self.tester.get_local_port(dutTxPortId)
rxItf = self.tester.get_interface(port)
# the package dect mac must is dut tx port id when the port promisc is off
- mac = self.dut.get_mac_address(dutRxPortId)
+ self.dmac = self.dut.get_mac_address(dutRxPortId)
# FIXME send a burst with only num packet
- self.tester.scapy_append('sendp([Ether(dst="%s")/Dot1Q(vlan=%s)/IP(len=46)], iface="%s")' % (mac, vid, txItf))
+ self.tester.scapy_append('sendp([Ether(src="%s",dst="%s")/Dot1Q(vlan=%s)/IP(len=46)], iface="%s")' % (self.smac, self.dmac, vid, txItf))
self.tester.scapy_execute()
def set_up(self):
@@ -120,16 +122,18 @@ class TestVlan(TestCase):
Enable receipt of VLAN packets
"""
- self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd> ")
+ if self.nic == "redrockcanyou" :
+ print dts.RED("fm10k not support this case\n")
+ return
+ self.dut.send_expect("rx_vlan add %d %s" % (self.vlan, dutRxPortId), "testpmd> ")
self.dut.send_expect("vlan set strip off %s" % dutRxPortId, "testpmd> ")
self.dut.send_expect("start", "testpmd> ", 120)
out = self.dut.send_expect("show port info %s" % dutRxPortId, "testpmd> ", 20)
self.start_tcpdump()
- self.vlan_send_packet(1)
- #out = self.tester.scapy_get_result()
+ self.vlan_send_packet(self.vlan)
out = self.get_tcpdump_package()
- self.verify("vlan 1" in out, "Wrong vlan:" + out)
+ self.verify("vlan %d" % self.vlan in out, "Wrong vlan:" + out)
self.dut.send_expect("stop", "testpmd> ")
@@ -140,13 +144,15 @@ class TestVlan(TestCase):
"""
- self.dut.send_expect("rx_vlan rm 1 %s" % dutRxPortId, "testpmd> ")
+ self.dut.send_expect("rx_vlan rm %d %s" % (self.vlan, dutRxPortId), "testpmd> ")
self.dut.send_expect("start", "testpmd> ", 120)
self.start_tcpdump()
- self.vlan_send_packet(1)
+ self.vlan_send_packet(self.vlan)
out = self.get_tcpdump_package()
- self.verify("vlan 1" not in out, "Wrong vlan:" + out)
+ # fm10k switch will redirect package if not send to nic
+ if (not((self.nic == "redrockcanyou") and ("%s > %s"%(self.smac, self.dmac) in out))):
+ self.verify("vlan %d" % self.vlan not in out, "Wrong vlan:" + out)
out = self.dut.send_expect("stop", "testpmd> ")
@@ -154,45 +160,44 @@ class TestVlan(TestCase):
def test_vlan_strip_config_on(self):
self.dut.send_expect("vlan set strip on %s" % dutRxPortId, "testpmd> ", 20)
- self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd> ", 20)
+ self.dut.send_expect("rx_vlan add %d %s" % (self.vlan, dutRxPortId), "testpmd> ", 20)
out = self.dut.send_expect("show port info %s" % dutRxPortId, "testpmd> ", 20)
self.verify("strip on" in out, "Wrong strip:" + out)
self.dut.send_expect("start", "testpmd> ", 120)
self.start_tcpdump()
- self.vlan_send_packet(1)
+ self.vlan_send_packet(self.vlan)
out = self.get_tcpdump_package()
- self.verify("vlan 1" not in out, "Wrong vlan:" + out)
+ self.verify("vlan %d" % self.vlan not in out, "Wrong vlan:" + out)
out = self.dut.send_expect("quit", "#", 120)
def test_vlan_strip_config_off(self):
+ if self.nic == "redrockcanyou" :
+ print dts.RED("fm10k not support this case\n")
+ return
self.dut.send_expect("vlan set strip off %s" % dutRxPortId, "testpmd> ", 20)
- self.dut.send_expect("rx_vlan add 1 %s" % dutRxPortId, "testpmd> ", 20)
+ self.dut.send_expect("rx_vlan add %d %s" % (self.vlan, dutRxPortId), "testpmd> ", 20)
out = self.dut.send_expect("show port info %s" % dutRxPortId, "testpmd> ", 20)
self.verify("strip off" in out, "Wrong strip:" + out)
self.dut.send_expect("set nbport 2", "testpmd> ")
self.dut.send_expect("start", "testpmd> ", 120)
self.start_tcpdump()
- self.vlan_send_packet(1)
+ self.vlan_send_packet(self.vlan)
out = self.get_tcpdump_package()
- self.verify("vlan 1" in out, "Wrong strip vlan:" + out)
+ self.verify("vlan %d" % self.vlan in out, "Wrong strip vlan:" + out)
out = self.dut.send_expect("stop", "testpmd> ", 120)
- def FAILING_test_vlan_enable_vlan_insertion(self):
+ def test_vlan_enable_vlan_insertion(self):
"""
Enable VLAN header insertion in transmitted packets
"""
- port = self.tester.get_local_port(valports[0])
+ port = self.tester.get_local_port(dutTxPortId,)
intf = self.tester.get_interface(port)
self.dut.send_expect("set nbport 2", "testpmd> ")
- self.dut.send_expect("tx_vlan set 1 %s" % valports[0], "testpmd> ")
-
- self.dut.send_expect("set promisc all on", "testpmd> ")
- if self.nic == 'hartwell':
- self.dut.send_expect("vlan set strip on %s" % valports[0], "testpmd> ")
+ self.dut.send_expect("tx_vlan set %d %s" % (self.vlan, dutTxPortId), "testpmd> ")
self.tester.scapy_background()
self.tester.scapy_append('p = sniff(iface="%s", count=1, timeout=5)' % intf)
@@ -205,8 +210,9 @@ class TestVlan(TestCase):
time.sleep(2)
out = self.tester.scapy_get_result()
- self.verify("vlan=1L" in out, "Wrong vlan: " + out)
- if self.nic in ["fortville_eagle", "fortville_spirit", "fortville_spirit_single"]:
+ self.verify("vlan=%dL" % self.vlan in out, "Wrong vlan: " + out)
+ if self.nic in ["fortville_eagle", "fortville_spirit", "fortville_spirit_single", "redrockcanyou"]:
+ self.dut.send_expect("tx_vlan reset %s" % dutTxPortId, "testpmd> ", 30)
self.dut.send_expect("stop", "testpmd> ", 30)
else:
self.dut.send_expect("quit", "# ", 30)
@@ -217,6 +223,7 @@ class TestVlan(TestCase):
"""
pass
+
def tear_down_all(self):
"""
Run after each test suite.
--
1.9.3
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [dts] [PATCH 0/3 v2] Add RRC support in test suites
2015-07-08 8:51 ` [dts] [PATCH 0/3 v2] Add RRC support in test suites Michael Qiu
` (2 preceding siblings ...)
2015-07-08 8:51 ` [dts] [PATCH 3/3 v2] tests: Add RRC support with vlan suite Michael Qiu
@ 2015-07-09 2:26 ` Liu, Yong
3 siblings, 0 replies; 13+ messages in thread
From: Liu, Yong @ 2015-07-09 2:26 UTC (permalink / raw)
To: Qiu, Michael, dts
Thanks, applied in 1.1 branch.
> -----Original Message-----
> From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Michael Qiu
> Sent: Wednesday, July 08, 2015 4:51 PM
> To: dts@dpdk.org
> Subject: [dts] [PATCH 0/3 v2] Add RRC support in test suites
>
> jumbo frame/scatter/vlan enable RRC support.
>
> Michael Qiu (3):
> tests: Add RRC support with jumbo frame
> tests: Add RRC support in suit scatter
> tests: Add RRC support with vlan suite
>
> tests/TestSuite_jumboframes.py | 15 +++++++++++
> tests/TestSuite_scatter.py | 15 +++++------
> tests/TestSuite_vlan.py | 56 +++++++++++++++++++++++++------------
> -----
> 3 files changed, 57 insertions(+), 29 deletions(-)
>
> --
> 1.9.3
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2015-07-09 2:28 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-07-07 9:37 [dts] [PATCH 0/3] Add RRC support in test suites Michael Qiu
2015-07-07 9:37 ` [dts] [PATCH 1/3] tests: Add RRC support with jumbo frame Michael Qiu
2015-07-07 9:37 ` [dts] [PATCH 2/3] tests: Add RRC support in suit scatter Michael Qiu
2015-07-08 0:57 ` Liu, Yong
2015-07-08 1:49 ` Qiu, Michael
2015-07-07 9:38 ` [dts] [PATCH 3/3] tests: Add RRC support with vlan suite Michael Qiu
2015-07-08 1:43 ` Liu, Yong
2015-07-08 1:54 ` Qiu, Michael
2015-07-08 8:51 ` [dts] [PATCH 0/3 v2] Add RRC support in test suites Michael Qiu
2015-07-08 8:51 ` [dts] [PATCH 1/3 v2] tests: Add RRC support with jumbo frame Michael Qiu
2015-07-08 8:51 ` [dts] [PATCH 2/3 v2] tests: Add RRC support in suite scatter Michael Qiu
2015-07-08 8:51 ` [dts] [PATCH 3/3 v2] tests: Add RRC support with vlan suite Michael Qiu
2015-07-09 2:26 ` [dts] [PATCH 0/3 v2] Add RRC support in test suites Liu, Yong
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).