[dts] [PATCH] framework: wait 10 seconds after testpmd starts to ensure link is up

Herbert Guan Herbert.Guan at arm.com
Mon Aug 7 05:25:34 CEST 2017


Marvin,

Thanks for review.  V2 patch has been submitted just now.

Herbert

-----Original Message-----
From: Liu, Yong [mailto:yong.liu at intel.com]
Sent: Monday, August 7, 2017 10:42
To: Herbert Guan <Herbert.Guan at arm.com>; dts at dpdk.org; jianbo.liu at linaro.org
Subject: RE: [dts] [PATCH] framework: wait 10 seconds after testpmd starts to ensure link is up

Hi Herbert,
Not every kind of NIC will output link up message, e.g. FVL will not show "Link Up" when LSC event coming.
Waiting for "LSC event" will be more suitable for the expecting prompt.

Agreed with change in pmd_ouput module, waiting 10 seconds will ensure the stability of link status.

Thanks,
Marvin

> -----Original Message-----
> From: dts [mailto:dts-bounces at dpdk.org] On Behalf Of Herbert Guan
> Sent: Friday, August 04, 2017 3:20 PM
> To: dts at dpdk.org; jianbo.liu at linaro.org
> Cc: Herbert Guan <herbert.guan at arm.com>
> Subject: [dts] [PATCH] framework: wait 10 seconds after testpmd starts
> to ensure link is up
>
> It'll take some time for links up after testpmd is started.
> Before that "testpmd>" will be prompted but test shall not start until
> links are up.  "Link Up" is a better checker for a specific test case.
> While since pmd_output.py is usd by many test cases, wait
> 10 seconds will be safer, in case of some test cases do not actually
> expect for an established link.
>
> Signed-off-by: Herbert Guan <herbert.guan at arm.com>
> ---
>  framework/pmd_output.py             | 3 +++
>  tests/TestSuite_dynamic_config.py   | 2 +-
>  tests/TestSuite_queue_start_stop.py | 2 +-
>  3 files changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/framework/pmd_output.py b/framework/pmd_output.py index
> 260f42c..2d1e3d7 100644
> --- a/framework/pmd_output.py
> +++ b/framework/pmd_output.py
> @@ -31,6 +31,7 @@
>
>  import os
>  import re
> +from time import sleep
>  from settings import TIMEOUT, PROTOCOL_PACKET_SIZE, get_nic_driver
> from utils import create_mask
>
> @@ -119,6 +120,8 @@ class PmdOutput():
>              command += " --disable-hw-vlan-filter"
>          out = self.dut.send_expect(command, "testpmd> ", 120)
>          self.command = command
> +        # wait 10s to ensure links getting up before test start.
> +        sleep(10)
>          return out
>
>      def execute_cmd(self, pmd_cmd, expected='testpmd> ',
> timeout=TIMEOUT, diff --git a/tests/TestSuite_dynamic_config.py
> b/tests/TestSuite_dynamic_config.py
> index b4ddede..e344aac 100644
> --- a/tests/TestSuite_dynamic_config.py
> +++ b/tests/TestSuite_dynamic_config.py
> @@ -121,7 +121,7 @@ class TestDynamicConfig(TestCase):
>  if "cavium" in self.dut.nic_type:
>              cmd += " --disable-hw-vlan-filter"
>
> -        self.dut.send_expect("%s" % cmd, "testpmd> ", 120)
> +        self.dut.send_expect("%s" % cmd, "Link Up", 120)
>          self.dut.send_expect("start", "testpmd> ", 120)
>
>
> diff --git a/tests/TestSuite_queue_start_stop.py
> b/tests/TestSuite_queue_start_stop.py
> index d1df66b..9e190f6 100644
> --- a/tests/TestSuite_queue_start_stop.py
> +++ b/tests/TestSuite_queue_start_stop.py
> @@ -130,7 +130,7 @@ class TestQueueStartStop(TestCase):
>          """
>          #dpdk start
>          try:
> -            self.dut.send_expect("./app/test-pmd/testpmd -c 0xf -n 4 -- -
> i --portmask=0x1 --port-topology=loop", "testpmd>", 120)
> +            self.dut.send_expect("./app/test-pmd/testpmd -c 0xf -n 4
> + -- -
> i --portmask=0x1 --port-topology=loop", "Link Up", 120)
>              self.dut.send_expect("set fwd mac", "testpmd>")
>              self.dut.send_expect("start", "testpmd>")
>              self.check_forwarding([0, 0], self.nic)
> --
> 1.8.3.1

IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.


More information about the dts mailing list