On Mon, Mar 31, 2025 at 11:58 AM Thomas Wilks wrote:
>
> Add import for lldp scapy package to enable lldp packet
> creation and handling.
>
> Signed-off-by: Thomas Wilks
> Reviewed-by: Luca Vizzarro
Reviewed-by: Dean Marx
| None = None
One small thing I noticed here is that you're using Union for the
queue and pipes for the rest of the declarations. queue: int |
Literal["*"] = "*" would be the same thing functionally, and it would
save you an import.
Reviewed-by: Dean Marx
niffing at the start up of the test run. Packets are
> only captured when requested by the tests through the use of Event
> signals.
>
> Signed-off-by: Luca Vizzarro
> Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
Add a field to the TestPmdVerbosePacket text parser
that stores destination port values for TCP/UDP packets.
Signed-off-by: Dean Marx
---
dts/framework/remote_session/testpmd_shell.py | 5 +
1 file changed, 5 insertions(+)
diff --git a/dts/framework/remote_session/testpmd_shell.py
b/dts
Changes the unified packet testing suite to use layer 4
destination ports as packet verification IDs.
Signed-off-by: Dean Marx
---
dts/tests/TestSuite_uni_pkt.py | 106 -
1 file changed, 51 insertions(+), 55 deletions(-)
diff --git a/dts/tests
> rx/tx offload:
>
> 1.Dean has rebased this series but is running into a bug with the capability
> check test parser returning no flags. He confirmed from running the steps
> manually that the flags we expect are being reported by testpmd.
>
> 2. Dean please provide a summary to Luca so there is
Remove capability requirement from checksum offload test suite
that was not required to run the test cases.
Signed-off-by: Dean Marx
---
dts/tests/TestSuite_checksum_offload.py | 1 -
1 file changed, 1 deletion(-)
diff --git a/dts/tests/TestSuite_checksum_offload.py
b/dts/tests
Changes the checksum offload testing suite to use layer 4
destination ports as packet verification IDs.
Signed-off-by: Dean Marx
---
dts/tests/TestSuite_checksum_offload.py | 130 ++--
1 file changed, 77 insertions(+), 53 deletions(-)
diff --git a/dts/tests
: patch-143194 ("app/testpmd: add L4 port to verbose output")
Dean Marx (4):
dts: add layer 4 port field to verbose parser
dts: change verification field in checksum offload suite
dts: remove unnecessary capability requirement
change verification field in unified packet suite
Also, use is misspelled in the commit message
-by: Paul Szczepanek
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
This looks great, one small thing I noticed though is that you don't
necessarily need to build dpdk to use devbind, since it's already in
the usertools directory, so this commit/series title could be
misleading.
Otherwise:
Reviewed-by: Dean Marx
This makes sense, I noticed though that nothing is actually stored in
these placeholder directories yet, and dpdk is built in a separate
folder. Is the plan in the future to move this to the placeholder
directory? Or is there a different use case?
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
I like this implementation a lot, it's concise and easy to use.
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
Looks great, thanks Luca!
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
v3:
* fix name of the first patch
v4:
* rebase and refactor off next-dts
Dean Marx (2):
dts: add clearing port stats to testpmd shell
dts: add port stats checks test suite
dts/framework/remote_session/testpmd_shell.py | 57 --
dts/tests/TestSuite_port_stats_checks.py | 168
accordingly.
Signed-off-by: Jeremy Spewock
Signed-off-by: Dean Marx
---
dts/tests/TestSuite_port_stats_checks.py | 168 +++
1 file changed, 168 insertions(+)
create mode 100644 dts/tests/TestSuite_port_stats_checks.py
diff --git a/dts/tests/TestSuite_port_stats_checks.py
b/dts
s and examine
additional information provided by the raw output if needed.
Signed-off-by: Jeremy Spewock
Signed-off-by: Dean Marx
---
dts/framework/remote_session/testpmd_shell.py | 57 +++
1 file changed, 45 insertions(+), 12 deletions(-)
diff --git a/dts/framework/remote_se
Add method cleanup_sut to framework that removes a
DPDK source from a SUT node at the conclusion of a testrun.
This will only run when the DPDK source is being copied
from the DTS engine node during the testrun
(when remote=false in the configuration).
Signed-off-by: Dean Marx
---
dts/framework
> rendering the process of handling errors less repetitive and easier.
>
> Signed-off-by: Luca Vizzarro
Reviewed-by: Dean Marx
mplies the test writing process as the test writer won't need
> to be concerned about the nodes, and can directly use the tools, e.g.
> TestPmdShell, as needed which implement context awareness.
>
> Bugzilla ID: 1461
>
> Signed-off-by: Luca Vizzarro
Reviewed-by: Dean Marx
On Mon, Feb 3, 2025 at 10:17 AM Luca Vizzarro wrote:
>
> Add a new module which defines the global runtime status of DTS and the
> distinct execution stages and steps.
>
> Signed-off-by: Luca Vizzarro
Looks great!
Reviewed-by: Dean Marx
-by: Luca Vizzarro
Reviewed-by: Dean Marx
On Mon, Feb 3, 2025 at 10:17 AM Luca Vizzarro wrote:
>
> Change the Topology model to add further flexility in its usage as a
> standalone entry point to test suites.
>
> Signed-off-by: Luca Vizzarro
Reviewed-by: Dean Marx
ses.
>
> Signed-off-by: Luca Vizzarro
Reviewed-by: Dean Marx
port name which can be changed in the nodes.yaml file. This way the
user doesn't have to learn this through the framework, or trial and
error (especially since the ports have a name section as well.)
Reviewed-by: Dean Marx
Hi Luca,
I saw in the meeting minutes that the main purpose of this series is
to implement the separation of concern principle better in DTS. Just
wondering, what parts of the current framework did you think needed to
be separated and why? I'm taking an OOP class this semester and we
just started
Add method cleanup_sut to framework that removes a
DPDK source from a SUT node at the conclusion of a testrun.
This will only run when the DPDK source is being copied
from the DTS engine node during the testrun
(when remote=false in the conf.yaml).
Signed-off-by: Dean Marx
---
dts/framework
> My first question was why is there a need to pass all of dpdk_config through
> from here all the way to cleanup_sut()? Is it sufficient to extract
> dpdk_location from dpdk_config at the beginning here, and pass along just
> dpdk_location?
I can do that too if it's preferred, wasn't sure what
Add flow create/delete methods to TestPmdShell class
for initializing flow rules.
Signed-off-by: Dean Marx
---
dts/framework/remote_session/testpmd_shell.py | 45 +++
1 file changed, 45 insertions(+)
diff --git a/dts/framework/remote_session/testpmd_shell.py
b/dts/framework
Add dataclass for passing in flow rule creation arguments, as well as a
__str__ method for converting to a sendable testpmd command.
Signed-off-by: Dean Marx
---
dts/framework/remote_session/testpmd_shell.py | 52 ++-
1 file changed, 51 insertions(+), 1 deletion(-)
diff --git a
Got it, thanks Luca!
Add dataclass for passing in flow rule creation arguments, as well as a
__str__ method for converting to a sendable testpmd command.
Signed-off-by: Dean Marx
---
dts/framework/remote_session/testpmd_shell.py | 52 ++-
1 file changed, 51 insertions(+), 1 deletion(-)
diff --git a
Add flow create/delete methods to TestPmdShell class
for initializing flow rules.
Signed-off-by: Dean Marx
---
dts/framework/remote_session/testpmd_shell.py | 51 +++
1 file changed, 51 insertions(+)
diff --git a/dts/framework/remote_session/testpmd_shell.py
b/dts/framework
field that removing it will default to running all suites?
Otherwise I'm not sure how a user would know this without digging
through the docs or framework.
i.e.: # the following test suites will be run in their entirety. If
removed, all test suites will be run.
test_suites: etc.
Reviewed-by: Dean Marx
ing from the file but it
> has been specified as an environment/CLI override.
>
> Bugzilla ID: 1360
> Bugzilla ID: 1598
>
> Signed-off-by: Nicholas Pratte
> Signed-off-by: Luca Vizzarro
> Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
are now 2 distinct configuration files, there are also 2
> command line arguments to specify them.
>
> Bugzilla ID: 1344
>
> Signed-off-by: Nicholas Pratte
> Signed-off-by: Luca Vizzarro
> Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
removed from the list of total logical
> cores assuming that it was not listed within filter_specifier.
>
> This patch also removes 'vdevs' from 'system_under_test_node' and moves
> it into 'test_runs'.
>
> Bugzilla ID: 1360
>
> Signed-off-by: Nicholas Pratte
> Signed-off-by: Luca Vizzarro
> Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
used.
>
> Bugzilla ID: 1360
>
> Signed-off-by: Nicholas Pratte
> Signed-off-by: Luca Vizzarro
> Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
atte
> Signed-off-by: Luca Vizzarro
> Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
ratte
> Signed-off-by: Luca Vizzarro
> Reviewed-by: Paul Szczepanek
Reviewed-by: Dean Marx
Fixes verification method in multicast set function by changing
the stats capture to use show_port_info_all(). This way, the
method will continue to work even after DTS lifts the restriction
on port topologies.
Fixes: abf8a3bc793b ("dts: add multicast set function to shell")
Signed-of
Fixes checksum offload test suite docstring format
by adding steps and verify sections. Changes variables
formatted in camel case to snake case to fit python standards.
Fixes: 8c9a7471a0e6 ("dts: add checksum offload test suite")
Signed-off-by: Dean Marx
---
Fix a variable naming error within the verify method
that was causing an attribute error during runtime.
Fixes: 05d7ad873798 ("dts: resolve mypy type errors")
Signed-off-by: Dean Marx
---
dts/tests/TestSuite_checksum_offload.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletion
patch failure
* Removed set_verbose duplication and added dependency
v3:
* Rebased off next-dts
v4:
* Added missing rx_vxlan line to vxlan case
* Removed unnecessary testpmd.start() commands
* Added steps and verify sections in case docstrings
Dean Marx (2):
dts: add VXLAN port method to
Port over unified packet testing suite from old DTS. This suite
tests the ability of the PMD to recognize valid or invalid packet flags.
Signed-off-by: Dean Marx
Reviewed-by: Jeremy Spewock
---
dts/tests/TestSuite_uni_pkt.py | 300 +
1 file changed, 300
Add rx_vxlan_port add/rm method to testpmd shell for adding
or removing a vxlan id to the specified port filter list.
Signed-off-by: Dean Marx
Reviewed-by: Jeremy Spewock
---
dts/framework/remote_session/testpmd_shell.py | 21 +++
1 file changed, 21 insertions(+)
diff --git a
Suite for testing ability of Poll Mode Driver to turn promiscuous
mode on/off, allmulticast mode on/off, and show expected behavior
when sending packets with known, unknown, broadcast, and multicast
destination MAC addresses.
Signed-off-by: Dean Marx
---
dts/tests/TestSuite_dynamic_config.py
Add set multicast function for changing allmulticast mode
within testpmd shell.
Signed-off-by: Dean Marx
---
dts/framework/remote_session/testpmd_shell.py | 24 +++
1 file changed, 24 insertions(+)
diff --git a/dts/framework/remote_session/testpmd_shell.py
b/dts/framework
-off-by: Dean Marx
Reviewed-by: Jeremy Spewock
---
dts/framework/remote_session/testpmd_shell.py | 18 +++
dts/tests/TestSuite_queue_start_stop.py | 145 ++
2 files changed, 163 insertions(+)
create mode 100644 dts/tests/TestSuite_queue_start_stop.py
diff --git a/dts
Add a test suite to replace hello_world which simply
starts and stops a testpmd session. The user can use
this as a confidence check to verify their configuration.
Signed-off-by: Dean Marx
Reviewed-by: Paul Szczepanek
Reviewed-by: Luca Vizzarro
---
dts/framework/test_suite.py| 10
Add condition to results.json pass rate generation
method which returns 0 as the pass rate when the suite
is skipped, rather than causing a divide by 0 error.
Fixes: 9f8a257235ac ("dts: improve test run result statistics")
Signed-off-by: Dean Marx
---
dts/framework/test_resu
Also, I noticed after submitting this first version that suites where
some cases are skipped and the rest pass have a 100% pass rate in the
results report. Should this also mean that suites where every case is
skipped have a 100% pass rate? Right now this reports a 0% when the
entire suite is skipp
Got it, I can implement this asap
Got it, I can implement this asap. I also noticed after submitting
that test suites with skipped cases still report a 100% pass rate if
the non skipped cases still pass, so I'll probably change the pass
rate to 100% for when an entire suite is skipped unless anyone
disagrees.
Makes sense, I'll send out a new version soon
Add condition to results.json pass rate generation
method which returns 0 as the pass rate when the suite
is skipped, rather than causing a divide by 0 error.
Fixes: 9f8a257235ac ("dts: improve test run result statistics")
Signed-off-by: Dean Marx
---
dts/framework/test_resu
-off-by: Dean Marx
Reviewed-by: Jeremy Spewock
---
dts/framework/remote_session/testpmd_shell.py | 18 +++
dts/tests/TestSuite_queue_start_stop.py | 135 ++
2 files changed, 153 insertions(+)
create mode 100644 dts/tests/TestSuite_queue_start_stop.py
diff --git a/dts
> To me this does not read like it is properly validating deferred_start, so I
> want to double check this before we merge.
>
> From the link below, "All device queues (except form deferred start queues)
> status should be RTE_ETH_QUEUE_STATE_STARTED after start."
> https://doc.dpdk.org/api/rte__
Add a test suite to replace hello_world which simply
starts and stops a testpmd session. The user can use
this as a confidence check to verify their configuration.
Signed-off-by: Dean Marx
Reviewed-by: Paul Szczepanek
Reviewed-by: Luca Vizzarro
---
dts/framework/test_suite.py| 10
Add a test suite to replace hello_world which simply
starts and stops a testpmd session. The user can use
this as a confidence check to verify their configuration.
Signed-off-by: Dean Marx
Reviewed-by: Paul Szczepanek
Reviewed-by: Luca Vizzarro
---
dts/tests/TestSuite_hello_world.py | 70
-off-by: Dean Marx
Reviewed-by: Jeremy Spewock
---
dts/framework/remote_session/testpmd_shell.py | 18 +++
dts/tests/TestSuite_queue_start_stop.py | 141 ++
2 files changed, 159 insertions(+)
create mode 100644 dts/tests/TestSuite_queue_start_stop.py
diff --git a/dts
Add a test suite to replace hello_world which simply
starts and stops a testpmd session. The user can use
this as a confidence check to verify their configuration.
Signed-off-by: Dean Marx
Reviewed-by: Paul Szczepanek
---
dts/tests/TestSuite_hello_world.py | 68
Add a test suite to replace hello_world which simply
starts and stops a testpmd session. The user can use
this as a confidence check to verify their configuration.
Signed-off-by: Dean Marx
Reviewed-by: Paul Szczepanek
---
dts/tests/TestSuite_eal.py | 27 +++
1 file
-off-by: Dean Marx
Reviewed-by: Jeremy Spewock
---
dts/framework/remote_session/testpmd_shell.py | 18 +++
dts/tests/TestSuite_queue_start_stop.py | 141 ++
2 files changed, 159 insertions(+)
create mode 100644 dts/tests/TestSuite_queue_start_stop.py
diff --git a/dts
This suite tests the ability of the Poll Mode Driver
to enable and disable Rx/Tx queues on a port.
Signed-off-by: Dean Marx
Reviewed-by: Jeremy Spewock
---
dts/tests/TestSuite_queue_start_stop.py | 89 +
1 file changed, 89 insertions(+)
create mode 100644 dts/tests
Add a test suite to replace hello_world which simply
starts and stops a testpmd session. The user can use
this as a sanity check to verify their configuration.
Signed-off-by: Dean Marx
---
dts/tests/TestSuite_eal.py | 28
1 file changed, 28 insertions(+)
create
Adds a test suite to DTS which the user can have as
a sanity check for their EAL configuration. This can
be used as a replacement for the hello_world suite.
Dean Marx (1):
dts: add EAL sanity check suite
dts/tests/TestSuite_eal.py | 28
1 file changed, 28
Add method cleanup_sut to framework that removes a
DPDK source from a SUT node at the conclusion of a testrun.
This will only run when the DPDK source is being copied
from the DTS engine node during the testrun
(when remote=false in the conf.yaml).
Signed-off-by: Dean Marx
---
dts/framework
shared names
of tarballs/trees can cause permission errors.
Dean Marx (1):
dts: add SUT cleanup to framework
dts/framework/runner.py | 2 +-
dts/framework/testbed_model/sut_node.py | 23 ---
2 files changed, 21 insertions(+), 4 deletions(-)
--
2.44.0
Add flow create/delete methods to TestPmdShell class
for initializing flow rules.
Signed-off-by: Dean Marx
---
dts/framework/remote_session/testpmd_shell.py | 59 ++-
1 file changed, 58 insertions(+), 1 deletion(-)
diff --git a/dts/framework/remote_session/testpmd_shell.py
b
Add dataclass for passing in flow rule creation arguments, as well as a
__str__ method for converting to a sendable testpmd command.
Signed-off-by: Dean Marx
---
dts/framework/remote_session/testpmd_shell.py | 44 ++-
1 file changed, 43 insertions(+), 1 deletion(-)
diff --git a
> So... this is a weird one. I've integrated the code generation under
> dts-check-format.sh, so nobody should really worry about it, as that
> should be run before submitting. If it's not, then the CI will
> eventually pick it up when dts-check-format will be in place.
Right, and that definitely
This suite tests the ability of the Poll Mode Driver to enable
and disable Rx/Tx queues on a port.
Depends-on: patch-12 ("dts: add port queue modification
and forwarding stats to testpmd")
Signed-off-by: Dean Marx
Reviewed-by: Jeremy Spewock
---
dts/framework/config/conf_yaml_s
""Example custom configuration for the `TestHelloWorld` test
>> suite."""
>> +
>> +#: Timeout for the DPDK apps.
>> +timeout: int = 50
>> --
>> 2.43.0
>>
>>
> Additionally, I was a bit confused by the custom config examples, do these
> fields (timeout, my_custom_field) actually affect the suite in any way as
> of this patch? Or is this just so that we can potentially add configuration
> options through this method in the future?
>
> Reviewed-by: Dean Marx
>
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
Reviewed-by: Dean Marx
On Fri, Jul 5, 2024 at 1:20 PM Nicholas Pratte wrote:
> Adjusted DPDK documentation to reflect the changes made to the dts
> conf.yaml configuration file.
>
> Bugzilla ID: 1360
> Signed-off-by: Nicholas Pratte
>
Reviewed-by: Dean Marx
, allowing for
> the 'test_suites' attribute to be optional.
>
> Bugzilla ID: 1360
> Signed-off-by: Nicholas Pratte
>
Reviewed-by: Dean Marx
-memory_channels: 4 # tells DPDK to use 4 memory channels
> -hugepages_2mb: # optional; if removed, will use system hugepage
> configuration
> -number_of: 256
> -force_first_numa: false
>
Just curious, is there a reason 256 is the default value?
Reviewed-by: Dean Marx
> both reliably and easily within the framework.
>
> For Linux/Posix systems, the 'uname' command is used to determine system
> architecture. I believe that this is posix-standard and utilizes a
> standardized output.
>
> Bugzilla ID: 1360
> Signed-off-by: Nicholas Pratte
>
Reviewed-by: Dean Marx
n. Any other configuration, including "" or "any," will
> omit core 0.
>
> Documentation reworks are included to reflect the changes made.
>
> Bugzilla ID: 1360
> Signed-off-by: Nicholas Pratte
>
Reviewed-by: Dean Marx
are made to reflect these changes.
>
> Bugzilla ID: 1360
> Signed-off-by: Nicholas Pratte
>
Reviewed-by: Dean Marx
of the queue without blocking the traffic on other queues.
Signed-off-by: Jeremy Spewock
Signed-off-by: Dean Marx
---
dts/framework/config/conf_yaml_schema.json | 3 +-
dts/tests/TestSuite_dynamic_queue_conf.py | 293 +
2 files changed, 295 insertions(+), 1 deletion
they are still their default
values (i.e. not modified by the developer beforehand)
* Testpmd methods for port queue configuration and querying
v5:
* applied on next-dts
v6:
* rebased off of capabilities dataclass and methods
Dean Marx (2):
dts: add port queue modification and forwarding
through a TextParser dataclass in case there is future need for using
more of the output from the command used to query the information.
Signed-off-by: Jeremy Spewock
Signed-off-by: Dean Marx
---
dts/framework/remote_session/testpmd_shell.py | 216 +++---
1 file changed, 182 inserti
ng strange
happening on my side, but I would double check on your end just in case.
Otherwise:
Reviewed-by: Dean Marx
On Fri, Oct 25, 2024 at 1:59 PM Dean Marx wrote:
> Hi Tomáš,
>
> This all looks great, one thing I did notice when running locally is that
> the "test_suites"
Also, I want to point out that even though the --config-file argument
defaults to /dpdk/dts/conf.yaml, you still can't run ./main.py by itself.
s Pratte
>
Reviewed-by: Dean Marx
1 - 100 of 320 matches
Mail list logo