test suite reviews and discussions
 help / color / mirror / Atom feed
* Re: [dts] [PATCH V2 0/9] add functions to test MEV
  2023-08-25 15:28 [dts] [PATCH V2 0/9] add functions to test MEV Jiale Song
@ 2023-08-25  8:01 ` David Marchand
  2023-08-25 15:28 ` [dts] [PATCH V2 1/9] conf/crbs: add parameters Jiale Song
                   ` (8 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: David Marchand @ 2023-08-25  8:01 UTC (permalink / raw)
  To: Jiale Song; +Cc: dts

On Fri, Aug 25, 2023 at 9:19 AM Jiale Song <songx.jiale@intel.com> wrote:
>
> Jiale Song (9):
>   conf/crbs: add parameters
>   execution: add parameters and parameter annotations
>   framework/config: obtain and save the acc and imc configurations of MEV
>   framework/dts: add global variables
>   framework/dut: add and modify methods to adapt to MEV testing
>   framework/pmd_output: optimize methods to adapt to MEV testing
>   framework/project_dpdk: optimize methods to adapt to MEV testing
>   framework/settings: add drivers and NICs for mev
>   framework/tester: optimize scripts

Sorry if it is something well known, what is MEV?


-- 
David Marchand


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dts] [PATCH V2 0/9] add functions to test MEV
@ 2023-08-25 15:28 Jiale Song
  2023-08-25  8:01 ` David Marchand
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: Jiale Song @ 2023-08-25 15:28 UTC (permalink / raw)
  To: dts; +Cc: Jiale Song

Jiale Song (9):
  conf/crbs: add parameters
  execution: add parameters and parameter annotations
  framework/config: obtain and save the acc and imc configurations of MEV
  framework/dts: add global variables
  framework/dut: add and modify methods to adapt to MEV testing
  framework/pmd_output: optimize methods to adapt to MEV testing
  framework/project_dpdk: optimize methods to adapt to MEV testing
  framework/settings: add drivers and NICs for mev
  framework/tester: optimize scripts

 conf/crbs.cfg             |   4 +
 execution.cfg             |  21 +++++
 framework/config.py       |   4 +
 framework/dts.py          |  26 +++++-
 framework/dut.py          | 174 ++++++++++++++++++++++++++++++++++++--
 framework/pmd_output.py   |   3 +
 framework/project_dpdk.py |   3 +-
 framework/settings.py     |  10 ++-
 framework/tester.py       |   2 +-
 9 files changed, 234 insertions(+), 13 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dts] [PATCH V2 1/9] conf/crbs: add parameters
  2023-08-25 15:28 [dts] [PATCH V2 0/9] add functions to test MEV Jiale Song
  2023-08-25  8:01 ` David Marchand
@ 2023-08-25 15:28 ` Jiale Song
  2023-08-25 15:28 ` [dts] [PATCH V2 2/9] execution: add parameters and parameter comments Jiale Song
                   ` (7 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Jiale Song @ 2023-08-25 15:28 UTC (permalink / raw)
  To: dts; +Cc: Jiale Song

adding crb related parameters for mev testing.

Signed-off-by: Jiale Song <songx.jiale@intel.com>
---
 conf/crbs.cfg | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/conf/crbs.cfg b/conf/crbs.cfg
index a12e60a4..f50b559c 100644
--- a/conf/crbs.cfg
+++ b/conf/crbs.cfg
@@ -6,6 +6,8 @@
 #  os: operation system type linux or freebsd
 #  tester_ip: Tester ip address
 #  tester_passwd: [INSECURE] Tester password, leaving this blank will force using SSH keys
+#  dut_imc_ip: MEV IMC ip address
+#  dut_acc_ip: MEV ACC ip address
 #  pktgen_group: packet generator group name: ixia/trex/ixia_network
 #  channels: Board channel number
 #  bypass_core0: Whether by pass core0
@@ -21,6 +23,8 @@ os=linux
 dut_arch=
 tester_ip=xxx.xxx.xxx.xxx
 tester_passwd=
+dut_imc_ip=xxx.xxx.xxx.xxx
+dut_acc_ip=xxx.xxx.xxx.xxx
 ixia_group=
 pktgen_group=
 channels=4
-- 
2.25.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dts] [PATCH V2 2/9] execution: add parameters and parameter comments
  2023-08-25 15:28 [dts] [PATCH V2 0/9] add functions to test MEV Jiale Song
  2023-08-25  8:01 ` David Marchand
  2023-08-25 15:28 ` [dts] [PATCH V2 1/9] conf/crbs: add parameters Jiale Song
@ 2023-08-25 15:28 ` Jiale Song
  2023-08-25 15:28 ` [dts] [PATCH V2 3/9] framework/config: obtain and save the acc and imc configurations of MEV Jiale Song
                   ` (6 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Jiale Song @ 2023-08-25 15:28 UTC (permalink / raw)
  To: dts; +Cc: Jiale Song

add execution related parameters and comments for MEV testing.

Signed-off-by: Jiale Song <songx.jiale@intel.com>
---
 execution.cfg | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/execution.cfg b/execution.cfg
index 1507527c..f2526e70 100644
--- a/execution.cfg
+++ b/execution.cfg
@@ -1,3 +1,24 @@
+#  ************Readme************
+#  [Execution1]; Section Name,multiple segments can be configured, Required
+#  crbs=xxx:xxx:xxx:xxx; DUT ip address, Required
+#  drivername=vfio-pci or igb_uio; DPDK use driver, Required
+#  build_type=meson; DPDK compilation type, Required
+#  test_suites:
+#       hello_world, Test suite list, Required
+#  targets=
+#      x86_64-native-linuxapp-gcc or 86_64-native-linuxapp-clang or arm64-intel-linux-gcc; DPDK compilation targets, Required
+#  parameters=nic_type=cfg:func/perf=true; Test type, function or performance, Required
+#  rx_mode=novector or sse or avx2, avx512, avx512, nolimit, Setting the testpmd force-max-simd-bitwidth parameter, Optional or not filled in
+#       novector:force-max-simd-bitwidth=64; sse: force-max-simd-bitwidth=128; avx2:force-max-simd-bitwidth=256; avx512: force-max-simd-bitwidth=512; nolimit: force-max-simd-bitwidth=0;
+#  dcf_mode=enable; Testing vf cases using dcf mode, Optional or not filled in
+
+#  **********MEV nic test config parameters**********
+#  test_mev=False or True; Is it testing the MEV network card, Required in MEV test
+#  test_acc=False or True; Is it testing the MEV network card on ACC, Required in MEV test
+#  queue_model=splitq or singleq; Set the queue of the MEV port; Required in MEV test
+#  vport=0-3; Set the vport of the mev port; Required in MEV test
+#  rx_vport=0; Set the vport packet receiving port; Required in MEV test
+
 [Execution1]
 crbs=<CRB IP Address>
 #using igb_uio please refer to doc/dts_gsg/support_igb_uio.rst
-- 
2.25.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dts] [PATCH V2 3/9] framework/config: obtain and save the acc and imc configurations of MEV
  2023-08-25 15:28 [dts] [PATCH V2 0/9] add functions to test MEV Jiale Song
                   ` (2 preceding siblings ...)
  2023-08-25 15:28 ` [dts] [PATCH V2 2/9] execution: add parameters and parameter comments Jiale Song
@ 2023-08-25 15:28 ` Jiale Song
  2023-08-25 15:28 ` [dts] [PATCH V2 4/9] framework/dts: add global variables Jiale Song
                   ` (5 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Jiale Song @ 2023-08-25 15:28 UTC (permalink / raw)
  To: dts; +Cc: Jiale Song

save the acc and imc configurations of MEV in the crb dictionary.

Signed-off-by: Jiale Song <songx.jiale@intel.com>
---
 framework/config.py | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/framework/config.py b/framework/config.py
index 2cd95ff2..f1b91ae5 100644
--- a/framework/config.py
+++ b/framework/config.py
@@ -294,6 +294,10 @@ class CrbsConf(UserConf):
                     crb["pass"] = value
                 elif key == "os":
                     crb["OS"] = value
+                elif key == "dut_acc_ip":
+                    crb["ACC IP"] = value
+                elif key == "dut_imc_ip":
+                    crb["IMC IP"] = value
                 elif key == "tester_ip":
                     crb["tester IP"] = value
                 elif key == "tester_passwd":
-- 
2.25.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dts] [PATCH V2 4/9] framework/dts: add global variables
  2023-08-25 15:28 [dts] [PATCH V2 0/9] add functions to test MEV Jiale Song
                   ` (3 preceding siblings ...)
  2023-08-25 15:28 ` [dts] [PATCH V2 3/9] framework/config: obtain and save the acc and imc configurations of MEV Jiale Song
@ 2023-08-25 15:28 ` Jiale Song
  2023-08-25 15:28 ` [dts] [PATCH V2 5/9] framework/dut: add and modify methods to adapt to MEV testing Jiale Song
                   ` (4 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Jiale Song @ 2023-08-25 15:28 UTC (permalink / raw)
  To: dts; +Cc: Jiale Song

add mev related global variables.

Signed-off-by: Jiale Song <songx.jiale@intel.com>
---
 framework/dts.py | 26 +++++++++++++++++++++++++-
 1 file changed, 25 insertions(+), 1 deletion(-)

diff --git a/framework/dts.py b/framework/dts.py
index f540256d..704ebae0 100644
--- a/framework/dts.py
+++ b/framework/dts.py
@@ -145,10 +145,34 @@ def dts_parse_config(config, section):
         dcf_mode = config.get(section, "dcf_mode").strip().lower()
     except:
         dcf_mode = ""
+    try:
+        test_mev = config.get(section, "test_mev").strip().lower()
+    except:
+        test_mev = ""
+    try:
+        test_acc = config.get(section, "test_acc").strip().lower()
+    except:
+        test_acc = ""
+    try:
+        queue_model = config.get(section, "queue_model").strip().lower()
+    except:
+        queue_model = ""
+    try:
+        vport = config.get(section, "vport").strip().lower()
+    except:
+        vport = ""
+    try:
+        rx_vport = config.get(section, "rx_vport").strip().lower()
+    except:
+        rx_vport = "0"
 
     settings.save_global_setting(settings.DPDK_RXMODE_SETTING, rx_mode)
     settings.save_global_setting(settings.DPDK_DCFMODE_SETTING, dcf_mode)
-
+    settings.save_global_setting(settings.DPDK_QUEUE_MODEL_SETTING, queue_model)
+    settings.save_global_setting(settings.DPDK_VPORT_SETTING, vport)
+    settings.save_global_setting(settings.DPDK_RX_VPORT_SETTING, rx_vport)
+    settings.save_global_setting(settings.DPDK_TEST_MEV_SETTING, test_mev)
+    settings.save_global_setting(settings.DPDK_TEST_ACC_SETTING, test_acc)
     suite_list_dedup = {}
     ## suite_list_dedup[suite_name] := { True | Set | ... }
     ## True := All Cases to Run
-- 
2.25.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dts] [PATCH V2 5/9] framework/dut: add and modify methods to adapt to MEV testing
  2023-08-25 15:28 [dts] [PATCH V2 0/9] add functions to test MEV Jiale Song
                   ` (4 preceding siblings ...)
  2023-08-25 15:28 ` [dts] [PATCH V2 4/9] framework/dts: add global variables Jiale Song
@ 2023-08-25 15:28 ` Jiale Song
  2023-08-25 15:28 ` [dts] [PATCH V2 6/9] framework/pmd_output: optimize " Jiale Song
                   ` (3 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Jiale Song @ 2023-08-25 15:28 UTC (permalink / raw)
  To: dts; +Cc: Jiale Song

add and modify methods to adapt to MEV testing.

Signed-off-by: Jiale Song <songx.jiale@intel.com>
---
 framework/dut.py | 174 ++++++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 165 insertions(+), 9 deletions(-)

diff --git a/framework/dut.py b/framework/dut.py
index 0adb2786..d2a9cda5 100644
--- a/framework/dut.py
+++ b/framework/dut.py
@@ -2,6 +2,7 @@
 # Copyright(c) 2010-2014 Intel Corporation
 #
 
+import copy
 import os
 import re
 import threading
@@ -15,7 +16,16 @@ from nics.net_device import GetNicObj
 from .config import AppNameConf, PortConf
 from .crb import Crb
 from .exception import ParameterInvalidException
-from .settings import LOG_NAME_SEP, NICS
+from .logger import getLogger
+from .settings import (
+    DPDK_QUEUE_MODEL_SETTING,
+    DPDK_RX_VPORT_SETTING,
+    DPDK_TEST_ACC_SETTING,
+    DPDK_TEST_MEV_SETTING,
+    DPDK_VPORT_SETTING,
+    LOG_NAME_SEP,
+    NICS,
+)
 from .ssh_connection import SSHConnection
 from .test_result import ResultTable
 from .utils import RED, remove_old_rsa_key
@@ -62,6 +72,11 @@ class Dut(Crb):
         self.apps_name = {}
         self.dpdk_version = ""
         self.nic = None
+        self.test_mev = settings.load_global_setting(DPDK_TEST_MEV_SETTING).lower()
+        self.test_acc = settings.load_global_setting(DPDK_TEST_ACC_SETTING).lower()
+        if self.test_mev == "true":
+            self.imc_session = None
+            self.set_up_mev_test_env(alt_session)
 
     def filter_cores_from_crb_cfg(self):
         # get core list from crbs.cfg
@@ -188,20 +203,18 @@ class Dut(Crb):
 
         return file_prefix
 
-    def init_host_session(self, vm_name):
+    def init_host_session(self, name):
         """
         Create session for each VM, session will be handled by VM instance
         """
         self.host_session = SSHConnection(
             self.get_ip_address(),
-            vm_name + "_host",
+            name + "_host",
             self.get_username(),
             self.get_password(),
         )
         self.host_session.init_log(self.logger)
-        self.logger.info(
-            "[%s] create new session for VM" % (threading.current_thread().name)
-        )
+        self.logger.info("create new session for %s" % (name))
 
     def new_session(self, suite=""):
         """
@@ -274,6 +287,18 @@ class Dut(Crb):
         """
         self.send_expect("mount -t procfs proc /proc", "# ")
 
+    def get_imc_ip_address(self):
+        """
+        Get MEV imc ip address.
+        """
+        return self.crb["IMC IP"]
+
+    def get_acc_ip_address(self):
+        """
+        Get MEV acc ip address.
+        """
+        return self.crb["ACC IP"]
+
     def get_ip_address(self):
         """
         Get DUT's ip address.
@@ -331,7 +356,6 @@ class Dut(Crb):
         # disable tester port ipv6
         self.disable_tester_ipv6()
         self.get_nic_configurations()
-
         # print latest ports_info
         for port_info in self.ports_info:
             self.logger.info(port_info)
@@ -354,6 +378,26 @@ class Dut(Crb):
             if self.nic.default_driver == "ice":
                 self.get_nic_pkg(retry_times)
 
+    def get_mev_nic_configurations(self):
+        self.vport = settings.load_global_setting(DPDK_VPORT_SETTING).lower()
+        try:
+            vport = self.vport.split("-")
+            vport = list(range(int(vport[0]), int(vport[1]) + 1))
+        except:
+            vport = [
+                int(self.vport),
+            ]
+
+        if len(vport) > 1:
+            for i in range(len(vport) - 1):
+                dut_port_info = copy.copy(self.ports_info[0])
+                tester_port_info = copy.copy(self.tester.ports_info[0])
+                dut_port_info["mac"] = self.ports_info[0]["mac"].replace(
+                    "0", str(i + 1), 2
+                )
+                self.ports_info.append(dut_port_info)
+                self.tester.ports_info.append(tester_port_info)
+
     def get_nic_pkg(self, retry_times=3):
         self.nic.pkg = self.nic.get_nic_pkg()
         while not self.nic.pkg.get("type") and retry_times > 0:
@@ -1363,6 +1407,8 @@ class Dut(Crb):
             self.alt_session = None
         if self.host_init_flag:
             self.host_session.close()
+        if self.imc_session:
+            self.imc_session.close()
 
     def virt_exit(self):
         """
@@ -1382,6 +1428,98 @@ class Dut(Crb):
         self.close()
         self.logger.logger_exit()
 
+    def create_imc_session(self):
+        self.logger.info("create new session for %s" % ("dut_imc"))
+        self.imc_session = SSHConnection(
+            host=self.get_imc_ip_address(),
+            session_name="dut_imc",
+            username=self.get_username(),
+            password=self.get_password(),
+        )
+        self.imc_session.init_log(getLogger("dut_imc"))
+
+    def create_acc_session(self, alt_session=True):
+        self.logger.info("create new session for %s" % ("dut_acc"))
+        self.acc_session = SSHConnection(
+            host=self.get_acc_ip_address(),
+            session_name="dut_acc",
+            username=self.get_username(),
+            password=self.get_password(),
+        )
+        self.acc_session.init_log(getLogger("dut_acc"))
+        if alt_session:
+            self.acc_alt_session = SSHConnection(
+                host=self.get_acc_ip_address(),
+                session_name="dut_acc",
+                username=self.get_username(),
+                password=self.get_password(),
+            )
+
+    def create_session(self, name=""):
+        """
+        Create new session for additional usage. This session will not enable log.
+        """
+        if self.test_acc:
+            logger = getLogger(name)
+            session = SSHConnection(
+                self.get_acc_ip_address(),
+                name,
+                self.get_username(),
+                self.get_password(),
+                dut_id=self.dut_id,
+            )
+            session.init_log(logger)
+        else:
+            logger = getLogger(name)
+            session = SSHConnection(
+                self.get_ip_address(),
+                name,
+                self.get_username(),
+                self.get_password(),
+                dut_id=self.dut_id,
+            )
+            session.init_log(logger)
+        self.sessions.append(session)
+        return session
+
+    def mev_config_rx_port(self, out):
+        rx_vport = settings.load_global_setting(DPDK_RX_VPORT_SETTING).lower()
+        # matching rx vport mac addresses
+        regex = re.compile(
+            "Port\s+%s.*\s*.*:\s*(([0-9A-F]{2}:){5}[0-9A-F]{2})" % rx_vport
+        )
+        match_mac = regex.search(out)
+        if match_mac:
+            mac = match_mac.group(1)
+        else:
+            raise ParameterInvalidException(
+                "Unable to match the mac address of the rx vport!!!"
+            )
+        output = self.imc_session.send_expect(
+            "cli_client --query --config --verbose", "# "
+        )
+        match_vsi_id = re.search(
+            "vsi_id:\s+0x(\w+).*is_created:\s+yes.*mac\s+addr:\s+%s" % (mac.lower()),
+            output,
+        )
+        if match_vsi_id:
+            self.imc_session.send_expect(
+                "devmem 0x202920C100 64 0x80%s" % (match_vsi_id.group(1)), "# "
+            )
+        else:
+            raise ParameterInvalidException(
+                "Unable to match the vsi id of the rx vport!!!"
+            )
+
+    def set_up_mev_test_env(self, alt_session=True):
+        if self.test_acc == "true":
+            self.close()
+            self.create_acc_session(alt_session)
+            self.session = self.acc_session
+            self.alt_session = self.acc_alt_session
+        self.init_host_session("mev_host")
+        self.create_imc_session()
+
 
 class _EalParameter(object):
     def __init__(
@@ -1428,6 +1566,8 @@ class _EalParameter(object):
         param other_eal_param: user defined DPDK eal parameters, eg:
                         other_eal_param='--single-file-segments';
         """
+        self.test_mev = settings.load_global_setting(DPDK_TEST_MEV_SETTING).lower()
+        self.test_acc = settings.load_global_setting(DPDK_TEST_ACC_SETTING).lower()
         self.os_type = dut.get_os_type()
         self.fixed_prefix = fixed_prefix
         self.socket = socket
@@ -1561,7 +1701,11 @@ class _EalParameter(object):
             for port_info in self.dut.ports_info:
                 pci_list.append("%s %s" % (allow_option, port_info["pci"]))
         self.dut.logger.info(pci_list)
-        return " ".join(pci_list)
+        port_param = " ".join(pci_list)
+        if self.test_mev == "true":
+            mev_port_options = self._get_mev_port_options()
+            return port_param + f",{mev_port_options}"
+        return port_param
 
     def _make_b_ports_param(self) -> str:
         b_pci_list = []
@@ -1638,8 +1782,11 @@ class _EalParameter(object):
         port_mac_addr = self.dut.ports_info[port]["pci"] if type(port) == int else port
         port_param = f"{allow_option} {port_mac_addr}"
         port_option = self._get_port_options_from_config(port)
+        if self.test_mev == "true":
+            mev_port_options = self._get_mev_port_options()
+            port_param = port_param + f",{mev_port_options}"
         if port_option:
-            port_param = f"{port_param},{port_option}"
+            port_param = port_param + f",{port_option}"
         return port_param
 
     def _get_port_options_from_config(self, port: Union[str, int]) -> str:
@@ -1680,3 +1827,12 @@ class _EalParameter(object):
             ]
         )
         return _eal_str
+
+    def _get_mev_port_options(self):
+        self.queue_model = settings.load_global_setting(DPDK_QUEUE_MODEL_SETTING)
+        self.vport = settings.load_global_setting(DPDK_VPORT_SETTING)
+        port_options_dict = {
+            "splitq": f"vport={self.vport}",
+            "singleq": f"vport={self.vport},rx_single=1,tx_single=1",
+        }
+        return port_options_dict[self.queue_model]
-- 
2.25.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dts] [PATCH V2 6/9] framework/pmd_output: optimize methods to adapt to MEV testing
  2023-08-25 15:28 [dts] [PATCH V2 0/9] add functions to test MEV Jiale Song
                   ` (5 preceding siblings ...)
  2023-08-25 15:28 ` [dts] [PATCH V2 5/9] framework/dut: add and modify methods to adapt to MEV testing Jiale Song
@ 2023-08-25 15:28 ` Jiale Song
  2023-08-25 15:28 ` [dts] [PATCH V2 7/9] framework/project_dpdk: " Jiale Song
                   ` (2 subsequent siblings)
  9 siblings, 0 replies; 11+ messages in thread
From: Jiale Song @ 2023-08-25 15:28 UTC (permalink / raw)
  To: dts; +Cc: Jiale Song

optimize methods to adapt to MEV testing.

Signed-off-by: Jiale Song <songx.jiale@intel.com>
---
 framework/pmd_output.py | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/framework/pmd_output.py b/framework/pmd_output.py
index c8e8b50f..d51c3a9b 100644
--- a/framework/pmd_output.py
+++ b/framework/pmd_output.py
@@ -135,6 +135,7 @@ class PmdOutput:
             config["ports"] = [
                 self.dut.ports_info[i]["pci"] for i in range(len(self.dut.ports_info))
             ]
+            config["ports"] = list(set(config["ports"]))
         all_eal_param = self.dut.create_eal_parameters(
             fixed_prefix=fixed_prefix, socket=socket, **config
         )
@@ -145,6 +146,8 @@ class PmdOutput:
         if self.session != self.dut:
             self.session.send_expect("cd %s" % self.dut.base_dir, "# ")
         out = self.session.send_expect(command, expected, timeout)
+        if self.dut.test_mev == "true":
+            self.dut.mev_config_rx_port(out=out)
         self.command = command
         # wait 10s to ensure links getting up before test start.
         sleep(10)
-- 
2.25.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dts] [PATCH V2 7/9] framework/project_dpdk: optimize methods to adapt to MEV testing
  2023-08-25 15:28 [dts] [PATCH V2 0/9] add functions to test MEV Jiale Song
                   ` (6 preceding siblings ...)
  2023-08-25 15:28 ` [dts] [PATCH V2 6/9] framework/pmd_output: optimize " Jiale Song
@ 2023-08-25 15:28 ` Jiale Song
  2023-08-25 15:28 ` [dts] [PATCH V2 8/9] framework/settings: add drivers and NICs for mev Jiale Song
  2023-08-25 15:28 ` [dts] [PATCH V2 9/9] framework/tester: optimize scripts Jiale Song
  9 siblings, 0 replies; 11+ messages in thread
From: Jiale Song @ 2023-08-25 15:28 UTC (permalink / raw)
  To: dts; +Cc: Jiale Song

optimize methods to adapt to MEV testing.

Signed-off-by: Jiale Song <songx.jiale@intel.com>
---
 framework/project_dpdk.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/framework/project_dpdk.py b/framework/project_dpdk.py
index 3f34ee02..919f25c9 100644
--- a/framework/project_dpdk.py
+++ b/framework/project_dpdk.py
@@ -77,6 +77,7 @@ class DPDKdut(Dut):
         # example apps by themselves and will fail otherwise.
         self.send_expect("export RTE_TARGET=" + self.target, "#")
         self.send_expect("export RTE_SDK=`pwd`", "#")
+        self.send_expect("export LD_LIBRARY_PATH=/usr/lib/", "#")
 
     def setup_modules(self, target, drivername, drivermode):
         """
@@ -421,7 +422,7 @@ class DPDKdut(Dut):
 
         bind_script_path = self.get_dpdk_bind_script()
         return self.send_expect(
-            "%s --force %s" % (bind_script_path, binding_list), "# "
+            "%s --force %s" % (bind_script_path, binding_list), "# ", timeout=60
         )
 
     def unbind_interfaces_linux(self, nics_to_bind=None):
-- 
2.25.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dts] [PATCH V2 8/9] framework/settings: add drivers and NICs for mev
  2023-08-25 15:28 [dts] [PATCH V2 0/9] add functions to test MEV Jiale Song
                   ` (7 preceding siblings ...)
  2023-08-25 15:28 ` [dts] [PATCH V2 7/9] framework/project_dpdk: " Jiale Song
@ 2023-08-25 15:28 ` Jiale Song
  2023-08-25 15:28 ` [dts] [PATCH V2 9/9] framework/tester: optimize scripts Jiale Song
  9 siblings, 0 replies; 11+ messages in thread
From: Jiale Song @ 2023-08-25 15:28 UTC (permalink / raw)
  To: dts; +Cc: Jiale Song

add drivers and NICs for mev.

Signed-off-by: Jiale Song <songx.jiale@intel.com>
---
 framework/settings.py | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/framework/settings.py b/framework/settings.py
index 1a561dda..e35e4501 100644
--- a/framework/settings.py
+++ b/framework/settings.py
@@ -98,6 +98,8 @@ NICS = {
     "corigine_4000_pf": "1da8:4000",
     "corigine_6000_pf": "1da8:6000",
     "corigine_6000_vf": "1da8:6003",
+    "mev-idpf": "8086:1452",
+    "mev-cpfl": "8086:1453",
 }
 
 ETH_700_SERIES = (
@@ -193,6 +195,8 @@ DRIVERS = {
     "corigine_4000_pf": "nfp",
     "corigine_6000_pf": "nfp",
     "corigine_6000_vf": "nfp_vf",
+    "mev-idpf": "idpf",
+    "mev-cpfl": "cpfl",
 }
 
 """
@@ -267,7 +271,11 @@ DTS_ERROR_ENV = "DTS_RUNNING_ERROR"
 DTS_CFG_FOLDER = "DTS_CFG_FOLDER"
 DTS_PARALLEL_SETTING = "DTS_PARALLEL_ENABLE"
 UPDATE_EXPECTED = "DTS_UPDATE_EXPECTED_ENABLE"
-
+DPDK_QUEUE_MODEL_SETTING = "DTS_TEST_QUEUE_MODEL"
+DPDK_VPORT_SETTING = "DTS_TEST_VPORT"
+DPDK_RX_VPORT_SETTING = "DTS_TEST_RX_VPORT"
+DPDK_TEST_MEV_SETTING = "DTS_TEST_MEV"
+DPDK_TEST_ACC_SETTING = "DTS_TEST_ACC"
 
 """
 DTS global error table
-- 
2.25.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

* [dts] [PATCH V2 9/9] framework/tester: optimize scripts
  2023-08-25 15:28 [dts] [PATCH V2 0/9] add functions to test MEV Jiale Song
                   ` (8 preceding siblings ...)
  2023-08-25 15:28 ` [dts] [PATCH V2 8/9] framework/settings: add drivers and NICs for mev Jiale Song
@ 2023-08-25 15:28 ` Jiale Song
  9 siblings, 0 replies; 11+ messages in thread
From: Jiale Song @ 2023-08-25 15:28 UTC (permalink / raw)
  To: dts; +Cc: Jiale Song

to ensure the normal state of the tester interface link, the interface
recovery step should not be skipped when starting DTS using the "--skip
setup" parameter.

Signed-off-by: Jiale Song <songx.jiale@intel.com>
---
 framework/tester.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/framework/tester.py b/framework/tester.py
index 5e6c72ad..051a2236 100644
--- a/framework/tester.py
+++ b/framework/tester.py
@@ -309,7 +309,7 @@ class Tester(Crb):
         """
         Restore Linux interfaces.
         """
-        if self.skip_setup:
+        if self.read_cache:
             return
 
         if not self.is_container:
-- 
2.25.1


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2023-08-25  8:02 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-25 15:28 [dts] [PATCH V2 0/9] add functions to test MEV Jiale Song
2023-08-25  8:01 ` David Marchand
2023-08-25 15:28 ` [dts] [PATCH V2 1/9] conf/crbs: add parameters Jiale Song
2023-08-25 15:28 ` [dts] [PATCH V2 2/9] execution: add parameters and parameter comments Jiale Song
2023-08-25 15:28 ` [dts] [PATCH V2 3/9] framework/config: obtain and save the acc and imc configurations of MEV Jiale Song
2023-08-25 15:28 ` [dts] [PATCH V2 4/9] framework/dts: add global variables Jiale Song
2023-08-25 15:28 ` [dts] [PATCH V2 5/9] framework/dut: add and modify methods to adapt to MEV testing Jiale Song
2023-08-25 15:28 ` [dts] [PATCH V2 6/9] framework/pmd_output: optimize " Jiale Song
2023-08-25 15:28 ` [dts] [PATCH V2 7/9] framework/project_dpdk: " Jiale Song
2023-08-25 15:28 ` [dts] [PATCH V2 8/9] framework/settings: add drivers and NICs for mev Jiale Song
2023-08-25 15:28 ` [dts] [PATCH V2 9/9] framework/tester: optimize scripts Jiale Song

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).