From: Jeremy Spewock
Currently the pf_smoke testing suite only uses the default ports for
sending and receiving packets. When looking at that suite in isolation,
this is fine since its primary goal is to test the physical functions
in the test run (which the defaults should represent). However, s
From: Jeremy Spewock
VFs should be tested against the same criteria as PFs, therefore the
smoke testing suite for VFs inherits the same test cases and testing
coverage from the PF smoke testing suite. The primary difference between
the two suites is that VF smoke initially creates virtual functio
From: Jeremy Spewock
In order to use VFs in the framework, methods for sending packets had to
be modified so that they support choosing which ports to use when
sending and receiving. This patch creates the same support for the
send_packets method so that it can be used with VFs.
Signed-off-by: J
From: Jeremy Spewock
v2:
* rebase on next-dts
* update dependencies
Depends-on: series-33149 ("dts: pf_smoke port")
Depends-on: series-33109 ("dts: add VFs to the framework")
Jeremy Spewock (3):
dts: allow specifying ingress port in send_packets
dts: parameterize ports used in pf_smoke su
From: Jeremy Spewock
The ability to change the configuration of a port at runtime is a
crucial aspect of DPDK. This patch adds both the steps required to
modify the number of queues on a port at runtime and also the
verification steps to ensure that the command behaved as expected.
Signed-off-by
From: Jeremy Spewock
This patch adds a smoke testing suite for Physical Function features.
The goal of this suite is to test some of the most basic features of
DPDK on a physical function and bail out early if any of these features
aren't supported as expected. Unlike DTS smoke tests, these ones
From: Jeremy Spewock
v3:
* rebase on next-dts
* update dependencies
Jeremy Spewock (2):
dts: add ability to modify number of queues on a port to testpmd
dts: add pf smoke testing suite
dts/framework/config/conf_yaml_schema.json| 3 +-
dts/framework/remote_session/testpmd_shell.py |
From: Jeremy Spewock
Currently the only methods provided in the test suite class for sending
packets capture the resulting received traffic after sending. There is,
in some cases, a need to send multiple packets at once while not really
needing to capture any of said received traffic. It is favor
From: Jeremy Spewock
Previously all scapy commands were handled using an XML-RPC server that
ran on the TGNode. This unnecessarily enforces a minimum Python version
of 3.10 on the server that is being used as a traffic generator and
complicates the implementation of scapy methods. This patch remo
From: Jeremy Spewock
v5:
* add send_packets patch back into this series but as its own patch
Jeremy Spewock (2):
dts: rework packet addressing
dts: add send_packets to test_suite
dts/framework/test_suite.py| 83 +++---
dts/framework/testbed_model/tg_node.py
From: Jeremy Spewock
This patch updates the _adjust_addresses method of test suites so
that addresses of packets are only modified if the developer did not
configure them beforehand. This allows for developers to have more
control over the content of their packets when sending them through the
fr
From: Jeremy Spewock
This patch updates the _adjust_addresses method of test suites so
that addresses of packets are only modified if the developer did not
configure them beforehand. This allows for developers to have more
control over the content of their packets when sending them through the
fr
From: Jeremy Spewock
v4:
* changed _adjust_addresses so that it doesn't use unneeded variables
* modify doc-strings
Jeremy Spewock (1):
dts: rework packet addressing
dts/framework/test_suite.py | 71 +
1 file changed, 48 insertions(+), 23 deletions(-)
-
From: Jeremy Spewock
v5:
* renamed commit subject to match contribution guidelines
* reformatted doc-strings to add more context and clarity
* removed unnecessary hyphens
Jeremy Spewock (1):
dts: use PythonShell for Scapy instead of XML-RPC
.../single_active_interactive_shell.py|
From: Jeremy Spewock
Multiple test suites from the old DTS framework rely on being able to
consume and interpret the verbose output of testpmd. The new framework
doesn't have an elegant way for handling the verbose output, but test
suites are starting to be written that rely on it. This patch cre
From: Jeremy Spewock
v7:
* update from string methods in both PacketOffloadFlag and RtePType to
match the ones in the rss offload flag
* update the doc-string in RtePType to have proper references to the
DPDK libraries where the information is taken from.
Jeremy Spewock (1):
dts: add t
From: Jeremy Spewock
This patch adds methods for querying and modifying port queue state and
configuration. In addition to this, it also adds the ability to capture
the forwarding statistics that get outputted when you send the "stop"
command in testpmd. Querying of port queue information is hand
From: Jeremy Spewock
This patch adds a new test suite that is designed to test the stopping
and modification of port queues at runtime. Specifically, there are
test cases that display the ports ability to stop some queues but still
send and receive traffic on others, as well as the ability to con
From: Jeremy Spewock
v5:
* applied on next-dts
Jeremy Spewock (2):
dts: add port queue modification and forwarding stats to testpmd
dts: add dynamic queue test suite
dts/framework/config/conf_yaml_schema.json| 3 +-
dts/framework/remote_session/testpmd_shell.py | 233 +-
From: Jeremy Spewock
Currently the only methods provided in the test suite class for sending
packets capture the resulting received traffic after sending. There is,
in some cases, a need to send multiple packets at once while not really
needing to capture any of said received traffic. It is favor
From: Jeremy Spewock
v3:
* split send_packets into a different patch
* updated code comments
* moved variable delcaration
Jeremy Spewock (1):
dts: rework packet addressing
dts/framework/test_suite.py | 75 ++---
1 file changed, 54 insertions(+), 21 deletion
From: Jeremy Spewock
This patch updates the _adjust_addresses method of test suites so
that addresses of packets are only modified if the developer did not
configure them beforehand. This allows for developers to have more
control over the content of their packets when sending them through the
fr
From: Jeremy Spewock
v4:
* update naming scheme of methods in the scapy traffic generator and
reorganized them
* update doc-strings to add consistency and fix typos
* add supoer().__init__() call to single_active_interactive_shell so
that it and the traffic generator can be given in any
From: Jeremy Spewock
Previously all scapy commands were handled using an XML-RPC server that
ran on the TGNode. This unnecessarily enforces a minimum Python version
of 3.10 on the server that is being used as a traffic generator and
complicates the implementation of scapy methods. This patch remo
From: Jeremy Spewock
v6:
* apply on next-dts
* update PacketOffloadFlag values which were equal to combinations of
other values to make them unique
* remove support of EUI-64 MAC addresses for now
* update RtePtype and PacketOffloadFlag so that their parser methods
don't bother themselv
From: Jeremy Spewock
Multiple test suites from the old DTS framework rely on being able to
consume and interpret the verbose output of testpmd. The new framework
doesn't have an elegant way for handling the verbose output, but test
suites are starting to be written that rely on it. This patch cre
From: Jeremy Spewock
The DTS framework in its current state supports binding ports to
different drivers on the SUT node but not the TG node. The TG node
already has the information that it needs about the different drivers
that it has available in the configuration file, but it did not
previously
From: Jeremy Spewock
The devbind script is used throughout DTS to manage drivers on the
remote hosts. Currently, the only way to copy this script onto a host
is to either copy the entire DPDK directory onto a host, or reach out
of the dts directory into its parent DPDK directory to access the
scr
From: Jeremy Spewock
v3:
* removed _remote from _remote_tmp_dir in node
* switched to using Path where appropriate
* added symlink to dpdk-devbind to dts/ and excluded from the
the formatting script
Jeremy Spewock (2):
dts: add synbolic link to dpdk-devbind script
dts: add binding to d
From: Jeremy Spewock
In order for test suites to create virtual functions there has to be
functions in the API that developers can use. This patch adds the
ability to create virtual functions to the Node API so that they are
reachable within test suites.
Bugzilla ID: 1500
Depends-on: patch-14431
From: Jeremy Spewock
Virtual functions in the framework are created using SR-IOV. The process
for doing this can vary depending on the operating system, so the
commands to create VFs have to be abstracted into different classes
based on the operating system. This patch adds the stubs for methods
From: Jeremy Spewock
In DPDK applications virtual functions are treated the same as ports,
but within the framework there are benefits to differentiating the two
in order to add more metadata to VFs about where they originate from.
For this reason this patch adds a new class for handling virtual
From: Jeremy Spewock
Previously in the DTS framework the helper methods in the TestSuite
class designated ports as either ingress or egress ports and would wrap
the methods of the traffic generator to allow packets to only flow to
those designated ingress or egress ports. This is undesirable in s
From: Jeremy Spewock
Previously the DTS framework only included methods that bind all ports
that the test run was aware of to either the DPDK driver or the OS
driver. There are however some cases, like creating virtual functions,
where you would want some ports bound to the OS driver and others b
From: Jeremy Spewock
v4:
* apply to next-dts
Jeremy Spewock (5):
dts: allow binding only a single port to a different driver
dts: parameterize what ports the TG sends packets to
dts: add class for virtual functions
dts: add OS abstractions for creating virtual functions
dts: add funct
From: Jeremy Spewock
This patch ports over the port_control test suite from the Old DTS
framework and adapts the functionality to fit with the current testing
framework. The test suite provides validation of basic port control
functions such as starting, stopping, and closing ports. It should
be
From: Jeremy Spewock
v2:
* apply to next-dts
Jeremy Spewock (2):
dts: add method for closing ports to testpmd
dts: add port control testing suite
dts/framework/config/conf_yaml_schema.json| 3 +-
dts/framework/remote_session/testpmd_shell.py | 18 +
dts/tests/TestSuite_port_contr
From: Jeremy Spewock
Closing ports is a standard configuration feature that is available in
testpmd but the framework lacks the ability to access this command
through the Testpmd API. This patch adds a method that performs this
action and verifies the results of sending the command to allow
devel
From: Jeremy Spewock
This patch adds a new test suite to DTS that validates the accuracy of
the port statistics using testpmd. The functionality is tested by
sending a packet of a fixed side to the SUT and verifying that the
statistic for packets received, received bytes, packets sent, and sent
b
From: Jeremy Spewock
Methods currently exist for querying the statistics of a port in
testpmd, but there weren't methods added for clearing the current
statistics on a port. This patch adds methods that allow you to clear
the statistics of a single port or all ports to account for situations
wher
From: Jeremy Spewock
v3:
* fix name of the first patch
Jeremy Spewock (2):
dts: add clearing port stats to testpmd shell
dts: add port stats checks test suite
dts/framework/config/conf_yaml_schema.json| 3 +-
dts/framework/remote_session/testpmd_shell.py | 49 +-
dts/tests/Tes
From: Jeremy Spewock
This patch adds a new test suite to DTS that validates the accuracy of
the port statistics using testpmd. The functionality is tested by
sending a packet of a fixed side to the SUT and verifying that the
statistic for packets received, received bytes, packets sent, and sent
b
From: Jeremy Spewock
Methods currently exist for querying the statistics of a port in
testpmd, but there weren't methods added for clearing the current
statistics on a port. This patch adds methods that allow you to clear
the statistics of a single port or all ports to account for situations
wher
From: Jeremy Spewock
v2:
* apply on next-dts
* add raw testpmd output to show_port_stats_all to make test method
consistent
* add dependency on VLAN suite for set_verbose method
Jeremy Spewock (2):
dts: add clearing port stats and verbose mode to testpmd
dts: add port stats checks test
From: Jeremy Spewock
Currently the only method provided in the test suite class for sending
packets sends a single packet and then captures the results. There is,
in some cases, a need to send multiple packets at once while not really
needing to capture any traffic received back. The method to do
From: Jeremy Spewock
v2:
* rebase on next-dts
Jeremy Spewock (1):
dts: add send_packets to test suites and rework packet addressing
dts/framework/test_suite.py| 87 +++---
dts/framework/testbed_model/tg_node.py | 9 +++
2 files changed, 75 insertions(+), 21
From: Jeremy Spewock
v3:
* rebase on next-dts branch
Jeremy Spewock (1):
dts: Remove XML-RPC server for Scapy TG and instead use PythonShell
.../single_active_interactive_shell.py| 7 +-
.../traffic_generator/__init__.py | 2 +-
.../testbed_model/traffic_generator/s
From: Jeremy Spewock
Previously all scapy commands were handled using an XML-RPC server that
ran on the TGNode. This unnecessarily enforces a minimum Python version
of 3.10 on the server that is being used as a traffic generator and
complicates the implementation of scapy methods. This patch remo
From: Jeremy Spewock
The DTS framework in its current state supports binding ports to
different drivers on the SUT node but not the TG node. The TG node
already has the information that it needs about the different drivers
that it has available in the configuration file, but it did not
previously
From: Jeremy Spewock
v2:
* only copy the devbind script onto the TG node rather than the
entire DPDK directory
Jeremy Spewock (1):
dts: add binding to different drivers to TG node
dts/framework/runner.py | 2 +
dts/framework/testbed_model/node.py | 49 +
From: Jeremy Spewock
Currently the runner target in the Dockerfile attempts to run the
`poetry install` command when building the image, but this fails due to
poetry not being found in the container. Poetry is installed in a
previous step with pipx, but doing so adds the binary to use poetry to
~
From: Jeremy Spewock
v5:
* fix typo
Jeremy Spewock (1):
dts: add text parser for testpmd verbose output
dts/framework/remote_session/testpmd_shell.py | 525 +-
dts/framework/utils.py| 6 +
2 files changed, 529 insertions(+), 2 deletions(-)
--
2.46
From: Jeremy Spewock
Multiple test suites from the old DTS framework rely on being able to
consume and interpret the verbose output of testpmd. The new framework
doesn't have an elegant way for handling the verbose output, but test
suites are starting to be written that rely on it. This patch cre
From: Jeremy Spewock
Multiple test suites from the old DTS framework rely on being able to
consume and interpret the verbose output of testpmd. The new framework
doesn't have an elegant way for handling the verbose output, but test
suites are starting to be written that rely on it. This patch cre
From: Jeremy Spewock
v4:
* adjust name of OLFlags class to be PacketOffloadFlags
* change values in PacketOffloadFlags to match the ones in
rte_mbuf_core.h
* added documentation from rte_mbuf_core.h to flag values
* added documentation from rte_mbuf_ptype.h to the RtePTypes class
From: Jeremy Spewock
Currently the runner target in the Dockerfile attempts to run the
`poetry install` command when building the image, but this fails due to
poetry not being found in the container. Poetry is installed in a
previous step with pipx, but doing so adds the binary to use poetry to
~
From: Jeremy Spewock
Currently the runner target in the Dockerfile attempts to run the
`poetry install` command when building the image, but this fails due to
poetry not being found in the container. Poetry is installed in a
previous step with pipx, but doing so adds the binary to use poetry to
~
From: Jeremy Spewock
v4:
* add dependency on port caching patch to avoid the need for
the if-statement that was added in the last version.
Jeremy Spewock (1):
dts: add methods for modifying MTU to testpmd shell
dts/framework/remote_session/testpmd_shell.py | 44 +++
1 fil
From: Jeremy Spewock
There are methods within DTS currently that support updating the MTU of
ports on a node, but the methods for doing this in a linux session rely
on the ip command and the port being bound to the kernel driver. Since
test suites are run while bound to the driver for DPDK, there
From: Jeremy Spewock
VFs should be tested against the same criteria as PFs, therefore the
smoke testing suite for VFs inherits the same test cases and testing
coverage from the PF smoke testing suite. The primary difference between
the two suites is that VF smoke initially creates virtual functio
From: Jeremy Spewock
In order to use VFs in the framework, methods for sending packets had to
be modified so that they support choosing which ports to use when
sending and receiving. This patch creates the same support for the
send_packets method so that it can be used with VFs.
Signed-off-by: J
From: Jeremy Spewock
Currently the pf_smoke testing suite only uses the default ports for
sending and receiving packets. When looking at that suite in isolation,
this is fine since its primary goal is to test the physical functions
in the test run (which the defaults should represent). However, s
From: Jeremy Spewock
The VF smoke testing suite in the old DTS framework had the same test
cases as the PF smoke testing suite and, therefore, it makes sense to
have the two test suites use the same testing functions. In this series
the easiest way to do this was to simply parameterize what ports
From: Jeremy Spewock
This patch adds a smoke testing suite for Physical Function features.
The goal of this suite is to test some of the most basic features of
DPDK on a physical function and bail out early if any of these features
aren't supported as expected. Unlike DTS smoke tests, these ones
From: Jeremy Spewock
The ability to change the configuration of a port at runtime is a
crucial aspect of DPDK. This patch adds both the steps required to
modify the number of queues on a port at runtime and also the
verification steps to ensure that the command behaved as expected.
Depends-on: p
From: Jeremy Spewock
v2:
* update dependencies and how the test suite uses them
* use a unique src MAC on packets to find them in verbose output
rather than checksums since using checksums isn't supported on all
NICs
* formatting fixes and doc-string updates
Jeremy Spewock (2):
dts: a
From: Jeremy Spewock
v3:
* add if-statement to pass the formatting script since the ports
parameter for testpmd is technically optional, but it will not be
None unless the user deliberately sets it to be.
Jeremy Spewock (1):
dts: add methods for modifying MTU to testpmd shell
dts/fram
From: Jeremy Spewock
There are methods within DTS currently that support updating the MTU of
ports on a node, but the methods for doing this in a linux session rely
on the ip command and the port being bound to the kernel driver. Since
test suites are run while bound to the driver for DPDK, there
From: Jeremy Spewock
This patch adds a new test suite that is designed to test the stopping
and modification of port queues at runtime. Specifically, there are
test cases that display the ports ability to stop some queues but still
send and receive traffic on others, as well as the ability to con
From: Jeremy Spewock
v4:
* split patch for updating packet addressing into its own series and
added a dependency in this one.
* squash commit for adding test suite to the yaml schema into the last
commit.
Jeremy Spewock (2):
dts: add port queue modification and forwarding stats to test
From: Jeremy Spewock
This patch adds methods for querying and modifying port queue state and
configuration. In addition to this, it also adds the ability to capture
the forwarding statistics that get outputted when you send the "stop"
command in testpmd. Querying of port queue information is hand
From: Jeremy Spewock
This patch was originally part of the dynamic queue test suite series,
but since other patches require it this series creates an independent
patch to allow it to be prioritized.
This patch is slightly different than the one in dynamic queue as this
version supports address u
From: Jeremy Spewock
Currently the only method provided in the test suite class for sending
packets sends a single packet and then captures the results. There is,
in some cases, a need to send multiple packets at once while not really
needing to capture any traffic received back. The method to do
From: Jeremy Spewock
This patch adds a test sutie that ports over and expands upon
functionality provided in the RxTx test sutie in Old DTS. This test
suite provides convenience methods and decorators in an attempt to
reduce code duplication when developers are tasked with testing the
same offloa
From: Jeremy Spewock
Testpmd offers methods to add and remove offloads from both ports and
queues on ports, but there are not yet method bindings in the Testpmd
API that the framework provides to reach them. This patch adds these
bindings for future test cases/suites that require certain
function
From: Jeremy Spewock
Testpmd offers methods for querying the runtime configuration of
offloads on a device that are useful for verification, but bindings to
reach these methods do not exist in the Testpmd API offered in the
framework. This patch creates methods that can query this configuration
a
From: Jeremy Spewock
Currently in the framework offloading capabilities are collected at a
device-level meaning that, if a capability is supported on either an
entire port or individual queues on that port, it is marked as supported
for the device. In some cases there is a want for being able to
From: Jeremy Spewock
The ability to query RX offloading capabilities of a device already
exist, but there are situations in other test suites where skipping a
test case/suite based on if a TX capability is missing is also
desirable. This patch expands the RX offloading capabilities class to
also
From: Jeremy Spewock
v2:
* added fixes to allow for passing the formatting script
* removed some unused classes in TestPmdShell
There are a lot of dependencies for this series, I listed them below in
the order that I applied them.
depends-on: patch-142691 (“dts:add send_packets to test suites
From: Jeremy Spewock
This patch adds a test sutie that ports over and expands upon
functionality provided in the RxTx test sutie in Old DTS. This test
suite provides convenience methods and decorators in an attempt to
reduce code duplication when developers are tasked with testing the
same offloa
From: Jeremy Spewock
Testpmd offers methods to add and remove offloads from both ports and
queues on ports, but there are not yet method bindings in the Testpmd
API that the framework provides to reach them. This patch adds these
bindings for future test cases/suites that require certain
function
From: Jeremy Spewock
Testpmd offers methods for querying the runtime configuration of
offloads on a device that are useful for verification, but bindings to
reach these methods do not exist in the Testpmd API offered in the
framework. This patch creates methods that can query this configuration
a
From: Jeremy Spewock
Currently in the framework offloading capabilities are collected at a
device-level meaning that, if a capability is supported on either an
entire port or individual queues on that port, it is marked as supported
for the device. In some cases there is a want for being able to
From: Jeremy Spewock
The ability to query RX offloading capabilities of a device already
exist, but there are situations in other test suites where skipping a
test case/suite based on if a TX capability is missing is also
desirable. This patch expands the RX offloading capabilities class to
also
From: Jeremy Spewock
This series ports over the functionality of the Rx/Tx offloading test
suite from Old DTS. I marked this suite as an RFC since there are still
some errors that I need to fix from the formatting script, but I felt
that the commits were in a place where they could be viewed to
u
From: Jeremy Spewock
Some NICs tested in DPDK allow for the scattering of packets without an
offload and others enforce that you enable the scattered_rx offload in
testpmd. The current version of the suite for testing support of
scattering packets only tests the case where the NIC supports testin
From: Jeremy Spewock
v8:
* update test suite to use newly submitted capabilities series
* split the MTU update patch into its own series.
* now that the --max-pkt-len bug is fixed on mlx in 24.07, no longer
need to set MTU directly so this is also removed.
Jeremy Spewock (1):
dts: ad
From: Jeremy Spewock
There are methods within DTS currently that support updating the MTU of
ports on a node, but the methods for doing this in a linux session rely
on the ip command and the port being bound to the kernel driver. Since
test suites are run while bound to the driver for DPDK, there
From: Jeremy Spewock
v2:
* allow for setting the MTU of all ports with testpmd.
* update doc-string
Jeremy Spewock (1):
dts: add methods for modifying MTU to testpmd shell
dts/framework/remote_session/testpmd_shell.py | 44 +++
1 file changed, 44 insertions(+)
--
2.46.0
From: Jeremy Spewock
There are methods within DTS currently that support updating the MTU of
ports on a node, but the methods for doing this in a linux session rely
on the ip command and the port being bound to the kernel driver. Since
test suites are run while bound to the driver for DPDK, there
From: Jeremy Spewock
There are mechanisms to update the MTU of ports in the framework
already, but only when those ports are bound to their kernel drivers.
This series adds the functionality needed within testpmd to change the
MTU of ports on the SUT which are bound to their DPDK driver.
Jeremy
From: Jeremy Spewock
In order for test suites to create virtual functions there has to be
functions in the API that developers can use. This patch adds the
ability to create virtual functions to the Node API so that they are
reachable within test suites.
Bugzilla ID: 1500
Depends-on: patch-14310
From: Jeremy Spewock
In DPDK applications virtual functions are treated the same as ports,
but within the framework there are benefits to differentiating the two
in order to add more metadata to VFs about where they originate from.
For this reason this patch adds a new class for handling virtual
From: Jeremy Spewock
Virtual functions in the framework are created using SR-IOV. The process
for doing this can vary depending on the operating system, so the
commands to create VFs have to be abstracted into different classes
based on the operating system. This patch adds the stubs for methods
From: Jeremy Spewock
Previously in the DTS framework the helper methods in the TestSuite
class designated ports as either ingress or egress ports and would wrap
the methods of the traffic generator to allow packets to only flow to
those designated ingress or egress ports. This is undesirable in s
From: Jeremy Spewock
Previously the DTS framework only included methods that bind all ports
that the test run was aware of to either the DPDK driver or the OS
driver. There are however some cases, like creating virtual functions,
where you would want some ports bound to the OS driver and others b
From: Jeremy Spewock
rfc-v3:
* add missing depends-on tags to appropriate commits.
* adjust some other small issues in commit bodies
* add changes to fix name of function in os_udp
Jeremy Spewock (5):
dts: allow binding only a single port to a different driver
dts: parameterize what ports
From: Jeremy Spewock
In order for test suites to create virtual functions there has to be
functions in the API that developers can use. This patch adds the
ability to create virtual functions to the Node API so that they are
reachable within test suites.
Bugzilla ID: 1500
Signed-off-by: Jeremy
From: Jeremy Spewock
Virtual functions in the framework are created using SR-IOV. The process
for doing this can vary depending on the operating system, so the
commands to create VFs have to be abstracted into different classes
based on the operating system. This patch adds the stubs for methods
From: Jeremy Spewock
In DPDK applications virtual functions are treated the same as ports,
but within the framework there are benefits to differentiating the two
in order to add more metadata to VFs about where they originate from.
For this reason this patch adds a new class for handling virtual
1 - 100 of 366 matches
Mail list logo