* [PATCH v1] dts: make one link the default topology
@ 2025-07-23 13:50 Dean Marx
2025-07-28 12:15 ` Luca Vizzarro
2025-08-07 14:07 ` [PATCH v2 1/2] dts: rewrite two link topology requirements Dean Marx
0 siblings, 2 replies; 10+ messages in thread
From: Dean Marx @ 2025-07-23 13:50 UTC (permalink / raw)
To: probb, luca.vizzarro, yoan.picchi, Honnappa.Nagarahalli, paul.szczepanek
Cc: dev, Dean Marx
Currently the default topology for test suites when not specified
is two link, which causes all one link test runs to skip.
This makes writing test suites less flexible for a user
who doesn't add a topology requirement, so changing this
to one link reduces barriers to getting a test suite
running quickly.
Bugzilla ID: 1759
Signed-off-by: Dean Marx <dmarx@iol.unh.edu>
---
dts/framework/testbed_model/topology.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dts/framework/testbed_model/topology.py b/dts/framework/testbed_model/topology.py
index 899ea0ad3a..9f21520bbb 100644
--- a/dts/framework/testbed_model/topology.py
+++ b/dts/framework/testbed_model/topology.py
@@ -35,7 +35,7 @@ class TopologyType(int, Enum):
@classmethod
def default(cls) -> "TopologyType":
"""The default topology required by test cases if not specified otherwise."""
- return cls.two_links
+ return cls.one_link
class PortLink(NamedTuple):
--
2.50.1
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1] dts: make one link the default topology
2025-07-23 13:50 [PATCH v1] dts: make one link the default topology Dean Marx
@ 2025-07-28 12:15 ` Luca Vizzarro
2025-08-07 14:07 ` [PATCH v2 1/2] dts: rewrite two link topology requirements Dean Marx
1 sibling, 0 replies; 10+ messages in thread
From: Luca Vizzarro @ 2025-07-28 12:15 UTC (permalink / raw)
To: Dean Marx, probb, yoan.picchi, Honnappa.Nagarahalli, paul.szczepanek; +Cc: dev
Looks good to me.
Reviewed-by: Luca Vizzarro <luca.vizzarro@arm.com>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v2 1/2] dts: rewrite two link topology requirements
2025-07-23 13:50 [PATCH v1] dts: make one link the default topology Dean Marx
2025-07-28 12:15 ` Luca Vizzarro
@ 2025-08-07 14:07 ` Dean Marx
2025-08-07 14:07 ` [PATCH v2 2/2] dts: make one link the default topology Dean Marx
` (3 more replies)
1 sibling, 4 replies; 10+ messages in thread
From: Dean Marx @ 2025-08-07 14:07 UTC (permalink / raw)
To: probb, luca.vizzarro, yoan.picchi, Honnappa.Nagarahalli, paul.szczepanek
Cc: dev, Dean Marx
Some of the DTS test suites require two link topologies
in order to run, but not all truly require two links
for proper testing. Rewrite the topology requirements
on these test suites to reflect the actual
requirements.
Bugzilla ID: 1755
Signed-off-by: Dean Marx <dmarx@iol.unh.edu>
---
dts/tests/TestSuite_blocklist.py | 3 ++-
dts/tests/TestSuite_checksum_offload.py | 2 +-
dts/tests/TestSuite_dynamic_config.py | 2 +-
dts/tests/TestSuite_port_control.py | 2 +-
dts/tests/TestSuite_uni_pkt.py | 2 +-
dts/tests/TestSuite_vlan.py | 2 +-
6 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/dts/tests/TestSuite_blocklist.py b/dts/tests/TestSuite_blocklist.py
index ce7da1cc8f..c75be247b5 100644
--- a/dts/tests/TestSuite_blocklist.py
+++ b/dts/tests/TestSuite_blocklist.py
@@ -12,7 +12,7 @@
from framework.testbed_model.port import Port
-@requires(topology_type=TopologyType.two_links)
+@requires(topology_type=TopologyType.one_link)
class TestBlocklist(TestSuite):
"""DPDK device blocklisting test suite."""
@@ -51,6 +51,7 @@ def one_port_blocklisted(self):
"""
self.verify_blocklisted_ports(self.topology.sut_ports[:1])
+ @requires(topology_type=TopologyType.two_links)
@func_test
def all_but_one_port_blocklisted(self):
"""Run testpmd with all but one blocklisted port.
diff --git a/dts/tests/TestSuite_checksum_offload.py b/dts/tests/TestSuite_checksum_offload.py
index c9efdcaa1c..54606676d5 100644
--- a/dts/tests/TestSuite_checksum_offload.py
+++ b/dts/tests/TestSuite_checksum_offload.py
@@ -29,7 +29,7 @@
from framework.testbed_model.capability import NicCapability, TopologyType, requires
-@requires(topology_type=TopologyType.two_links)
+@requires(topology_type=TopologyType.one_link)
@requires(NicCapability.RX_OFFLOAD_IPV4_CKSUM)
@requires(NicCapability.RX_OFFLOAD_UDP_CKSUM)
@requires(NicCapability.RX_OFFLOAD_TCP_CKSUM)
diff --git a/dts/tests/TestSuite_dynamic_config.py b/dts/tests/TestSuite_dynamic_config.py
index 49f295a39a..f713cbf945 100644
--- a/dts/tests/TestSuite_dynamic_config.py
+++ b/dts/tests/TestSuite_dynamic_config.py
@@ -26,7 +26,7 @@
@requires(NicCapability.PHYSICAL_FUNCTION)
-@requires(topology_type=TopologyType.two_links)
+@requires(topology_type=TopologyType.one_link)
class TestDynamicConfig(TestSuite):
"""Dynamic config suite.
diff --git a/dts/tests/TestSuite_port_control.py b/dts/tests/TestSuite_port_control.py
index 58783f1d18..c117b8b7ca 100644
--- a/dts/tests/TestSuite_port_control.py
+++ b/dts/tests/TestSuite_port_control.py
@@ -19,7 +19,7 @@
@requires(NicCapability.PHYSICAL_FUNCTION)
-@requires(topology_type=TopologyType.two_links)
+@requires(topology_type=TopologyType.one_link)
class TestPortControl(TestSuite):
"""DPDK Port Control Testing Suite."""
diff --git a/dts/tests/TestSuite_uni_pkt.py b/dts/tests/TestSuite_uni_pkt.py
index 690c5d4fd1..c767ecdeb0 100644
--- a/dts/tests/TestSuite_uni_pkt.py
+++ b/dts/tests/TestSuite_uni_pkt.py
@@ -30,7 +30,7 @@
from framework.testbed_model.capability import TopologyType, requires
-@requires(topology_type=TopologyType.two_links)
+@requires(topology_type=TopologyType.one_link)
class TestUniPkt(TestSuite):
"""DPDK Unified packet test suite.
diff --git a/dts/tests/TestSuite_vlan.py b/dts/tests/TestSuite_vlan.py
index d2a9e614d4..56ef8c431e 100644
--- a/dts/tests/TestSuite_vlan.py
+++ b/dts/tests/TestSuite_vlan.py
@@ -21,7 +21,7 @@
@requires(NicCapability.RX_OFFLOAD_VLAN_FILTER)
-@requires(topology_type=TopologyType.two_links)
+@requires(topology_type=TopologyType.one_link)
class TestVlan(TestSuite):
"""DPDK VLAN test suite.
--
2.50.1
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v2 2/2] dts: make one link the default topology
2025-08-07 14:07 ` [PATCH v2 1/2] dts: rewrite two link topology requirements Dean Marx
@ 2025-08-07 14:07 ` Dean Marx
2025-08-11 10:47 ` Luca Vizzarro
2025-08-11 10:47 ` [PATCH v2 1/2] dts: rewrite two link topology requirements Luca Vizzarro
` (2 subsequent siblings)
3 siblings, 1 reply; 10+ messages in thread
From: Dean Marx @ 2025-08-07 14:07 UTC (permalink / raw)
To: probb, luca.vizzarro, yoan.picchi, Honnappa.Nagarahalli, paul.szczepanek
Cc: dev, Dean Marx
Currently the default topology for test suites when not specified
is two link, which causes all one link test runs to skip.
This makes writing test suites less flexible for a user
who doesn't add a topology requirement, so changing this
to one link reduces barriers to getting a test suite
running quickly.
Bugzilla ID: 1759
Signed-off-by: Dean Marx <dmarx@iol.unh.edu>
---
dts/framework/testbed_model/topology.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dts/framework/testbed_model/topology.py b/dts/framework/testbed_model/topology.py
index 899ea0ad3a..9f21520bbb 100644
--- a/dts/framework/testbed_model/topology.py
+++ b/dts/framework/testbed_model/topology.py
@@ -35,7 +35,7 @@ class TopologyType(int, Enum):
@classmethod
def default(cls) -> "TopologyType":
"""The default topology required by test cases if not specified otherwise."""
- return cls.two_links
+ return cls.one_link
class PortLink(NamedTuple):
--
2.50.1
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2 1/2] dts: rewrite two link topology requirements
2025-08-07 14:07 ` [PATCH v2 1/2] dts: rewrite two link topology requirements Dean Marx
2025-08-07 14:07 ` [PATCH v2 2/2] dts: make one link the default topology Dean Marx
@ 2025-08-11 10:47 ` Luca Vizzarro
2025-08-11 10:50 ` Luca Vizzarro
2025-08-20 14:06 ` [PATCH v3 0/2] dts: change default topology to one link Dean Marx
3 siblings, 0 replies; 10+ messages in thread
From: Luca Vizzarro @ 2025-08-11 10:47 UTC (permalink / raw)
To: Dean Marx, probb, yoan.picchi, Honnappa.Nagarahalli, paul.szczepanek; +Cc: dev
On 07/08/2025 15:07, Dean Marx wrote:
> diff --git a/dts/tests/TestSuite_blocklist.py b/dts/tests/TestSuite_blocklist.py
> index ce7da1cc8f..c75be247b5 100644
> --- a/dts/tests/TestSuite_blocklist.py
> +++ b/dts/tests/TestSuite_blocklist.py
> @@ -12,7 +12,7 @@
> from framework.testbed_model.port import Port
>
>
> -@requires(topology_type=TopologyType.two_links)
> +@requires(topology_type=TopologyType.one_link)
> class TestBlocklist(TestSuite):
> """DPDK device blocklisting test suite."""
>
> @@ -51,6 +51,7 @@ def one_port_blocklisted(self):
> """
> self.verify_blocklisted_ports(self.topology.sut_ports[:1])
>
> + @requires(topology_type=TopologyType.two_links)
I am guessing by the logic of this then one_port_blocklisted could also
use it.> @func_test
> def all_but_one_port_blocklisted(self):
> """Run testpmd with all but one blocklisted port.
Would it make more sense to swap the order of the commits? This is
because adding an explicit @requires for one_link becomes redundant. I'd
probably change the default and then allow all the test suites that are
happy with one link to just remove the two link requirement.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2 2/2] dts: make one link the default topology
2025-08-07 14:07 ` [PATCH v2 2/2] dts: make one link the default topology Dean Marx
@ 2025-08-11 10:47 ` Luca Vizzarro
0 siblings, 0 replies; 10+ messages in thread
From: Luca Vizzarro @ 2025-08-11 10:47 UTC (permalink / raw)
To: Dean Marx, probb, yoan.picchi, Honnappa.Nagarahalli, paul.szczepanek; +Cc: dev
Reviewed-by: Luca Vizzarro <luca.vizzarro@arm.com>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2 1/2] dts: rewrite two link topology requirements
2025-08-07 14:07 ` [PATCH v2 1/2] dts: rewrite two link topology requirements Dean Marx
2025-08-07 14:07 ` [PATCH v2 2/2] dts: make one link the default topology Dean Marx
2025-08-11 10:47 ` [PATCH v2 1/2] dts: rewrite two link topology requirements Luca Vizzarro
@ 2025-08-11 10:50 ` Luca Vizzarro
2025-08-20 14:06 ` [PATCH v3 0/2] dts: change default topology to one link Dean Marx
3 siblings, 0 replies; 10+ messages in thread
From: Luca Vizzarro @ 2025-08-11 10:50 UTC (permalink / raw)
To: Dean Marx, probb, yoan.picchi, Honnappa.Nagarahalli, paul.szczepanek; +Cc: dev
Between patches a lot can happen, and a long wait time can make it
worse. It is useful to explain the changes between versions. Please
review the contributing guidelines around adding cover letters or
annotating single patches:
https://doc.dpdk.org/guides/contributing/patches.html#creating-patches
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v3 0/2] dts: change default topology to one link
2025-08-07 14:07 ` [PATCH v2 1/2] dts: rewrite two link topology requirements Dean Marx
` (2 preceding siblings ...)
2025-08-11 10:50 ` Luca Vizzarro
@ 2025-08-20 14:06 ` Dean Marx
2025-08-20 14:06 ` [PATCH v3 1/2] dts: make one link the default topology Dean Marx
2025-08-20 14:06 ` [PATCH v3 2/2] dts: rewrite two link topology requirements Dean Marx
3 siblings, 2 replies; 10+ messages in thread
From: Dean Marx @ 2025-08-20 14:06 UTC (permalink / raw)
To: probb, luca.vizzarro, yoan.picchi, Honnappa.Nagarahalli, paul.szczepanek
Cc: dev, Dean Marx
Currently, when the topology of a test suite is not specified,
it defaults to two_link. This may be counterintuitive to users,
and can slow down the process of getting a test suite running.
This series changes the default to one_link, and refactors the
topology decorators accordingly.
Signed-off-by: Dean Marx <dmarx@iol.unh.edu>
---
v2:
* Grouped one_link default and two_link requirements patches
v3:
* Remove one_link suite decorators
* Add two_link requirement to one_port_blocklisted case
Dean Marx (2):
dts: make one link the default topology
dts: rewrite two link topology requirements
dts/framework/testbed_model/topology.py | 2 +-
dts/tests/TestSuite_blocklist.py | 4 +++-
dts/tests/TestSuite_checksum_offload.py | 2 +-
dts/tests/TestSuite_dynamic_config.py | 2 +-
dts/tests/TestSuite_port_control.py | 2 +-
dts/tests/TestSuite_uni_pkt.py | 2 +-
dts/tests/TestSuite_vlan.py | 2 +-
7 files changed, 9 insertions(+), 7 deletions(-)
--
2.50.1
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v3 1/2] dts: make one link the default topology
2025-08-20 14:06 ` [PATCH v3 0/2] dts: change default topology to one link Dean Marx
@ 2025-08-20 14:06 ` Dean Marx
2025-08-20 14:06 ` [PATCH v3 2/2] dts: rewrite two link topology requirements Dean Marx
1 sibling, 0 replies; 10+ messages in thread
From: Dean Marx @ 2025-08-20 14:06 UTC (permalink / raw)
To: probb, luca.vizzarro, yoan.picchi, Honnappa.Nagarahalli, paul.szczepanek
Cc: dev, Dean Marx
Currently the default topology for test suites when not specified
is two link, which causes all one link test runs to skip.
This makes writing test suites less flexible for a user
who doesn't add a topology requirement, so changing this
to one link reduces barriers to getting a test suite
running quickly.
Bugzilla ID: 1759
Signed-off-by: Dean Marx <dmarx@iol.unh.edu>
Reviewed-by: Luca Vizzarro <luca.vizzarro@arm.com>
---
dts/framework/testbed_model/topology.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dts/framework/testbed_model/topology.py b/dts/framework/testbed_model/topology.py
index 899ea0ad3a..9f21520bbb 100644
--- a/dts/framework/testbed_model/topology.py
+++ b/dts/framework/testbed_model/topology.py
@@ -35,7 +35,7 @@ class TopologyType(int, Enum):
@classmethod
def default(cls) -> "TopologyType":
"""The default topology required by test cases if not specified otherwise."""
- return cls.two_links
+ return cls.one_link
class PortLink(NamedTuple):
--
2.50.1
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v3 2/2] dts: rewrite two link topology requirements
2025-08-20 14:06 ` [PATCH v3 0/2] dts: change default topology to one link Dean Marx
2025-08-20 14:06 ` [PATCH v3 1/2] dts: make one link the default topology Dean Marx
@ 2025-08-20 14:06 ` Dean Marx
1 sibling, 0 replies; 10+ messages in thread
From: Dean Marx @ 2025-08-20 14:06 UTC (permalink / raw)
To: probb, luca.vizzarro, yoan.picchi, Honnappa.Nagarahalli, paul.szczepanek
Cc: dev, Dean Marx
Some of the DTS test suites require two link topologies
in order to run, but not all truly require two links
for proper testing. Rewrite the topology requirements
on these test suites to reflect the actual
requirements.
Bugzilla ID: 1755
Signed-off-by: Dean Marx <dmarx@iol.unh.edu>
---
dts/tests/TestSuite_blocklist.py | 3 ++-
dts/tests/TestSuite_checksum_offload.py | 3 +--
dts/tests/TestSuite_dynamic_config.py | 3 +--
dts/tests/TestSuite_port_control.py | 3 +--
dts/tests/TestSuite_uni_pkt.py | 3 +--
dts/tests/TestSuite_vlan.py | 3 +--
6 files changed, 7 insertions(+), 11 deletions(-)
diff --git a/dts/tests/TestSuite_blocklist.py b/dts/tests/TestSuite_blocklist.py
index ce7da1cc8f..6c0507c51e 100644
--- a/dts/tests/TestSuite_blocklist.py
+++ b/dts/tests/TestSuite_blocklist.py
@@ -12,7 +12,6 @@
from framework.testbed_model.port import Port
-@requires(topology_type=TopologyType.two_links)
class TestBlocklist(TestSuite):
"""DPDK device blocklisting test suite."""
@@ -40,6 +39,7 @@ def no_blocklisted(self):
"""
self.verify_blocklisted_ports([])
+ @requires(topology_type=TopologyType.two_links)
@func_test
def one_port_blocklisted(self):
"""Run testpmd with one blocklisted port.
@@ -51,6 +51,7 @@ def one_port_blocklisted(self):
"""
self.verify_blocklisted_ports(self.topology.sut_ports[:1])
+ @requires(topology_type=TopologyType.two_links)
@func_test
def all_but_one_port_blocklisted(self):
"""Run testpmd with all but one blocklisted port.
diff --git a/dts/tests/TestSuite_checksum_offload.py b/dts/tests/TestSuite_checksum_offload.py
index d411af70a9..0487ef3ac1 100644
--- a/dts/tests/TestSuite_checksum_offload.py
+++ b/dts/tests/TestSuite_checksum_offload.py
@@ -26,10 +26,9 @@
TestPmdShell,
)
from framework.test_suite import TestSuite, func_test
-from framework.testbed_model.capability import NicCapability, TopologyType, requires
+from framework.testbed_model.capability import NicCapability, requires
-@requires(topology_type=TopologyType.two_links)
@requires(NicCapability.RX_OFFLOAD_IPV4_CKSUM)
@requires(NicCapability.RX_OFFLOAD_UDP_CKSUM)
@requires(NicCapability.RX_OFFLOAD_TCP_CKSUM)
diff --git a/dts/tests/TestSuite_dynamic_config.py b/dts/tests/TestSuite_dynamic_config.py
index 49f295a39a..99c2b67810 100644
--- a/dts/tests/TestSuite_dynamic_config.py
+++ b/dts/tests/TestSuite_dynamic_config.py
@@ -22,11 +22,10 @@
from framework.params.testpmd import SimpleForwardingModes
from framework.remote_session.testpmd_shell import NicCapability, TestPmdShell
from framework.test_suite import TestSuite, func_test
-from framework.testbed_model.capability import TopologyType, requires
+from framework.testbed_model.capability import requires
@requires(NicCapability.PHYSICAL_FUNCTION)
-@requires(topology_type=TopologyType.two_links)
class TestDynamicConfig(TestSuite):
"""Dynamic config suite.
diff --git a/dts/tests/TestSuite_port_control.py b/dts/tests/TestSuite_port_control.py
index 58783f1d18..ba06858640 100644
--- a/dts/tests/TestSuite_port_control.py
+++ b/dts/tests/TestSuite_port_control.py
@@ -15,11 +15,10 @@
from framework.params.testpmd import SimpleForwardingModes
from framework.remote_session.testpmd_shell import NicCapability, TestPmdShell
from framework.test_suite import TestSuite, func_test
-from framework.testbed_model.capability import TopologyType, requires
+from framework.testbed_model.capability import requires
@requires(NicCapability.PHYSICAL_FUNCTION)
-@requires(topology_type=TopologyType.two_links)
class TestPortControl(TestSuite):
"""DPDK Port Control Testing Suite."""
diff --git a/dts/tests/TestSuite_uni_pkt.py b/dts/tests/TestSuite_uni_pkt.py
index 690c5d4fd1..7cba5cb56b 100644
--- a/dts/tests/TestSuite_uni_pkt.py
+++ b/dts/tests/TestSuite_uni_pkt.py
@@ -27,10 +27,9 @@
TestPmdVerbosePacket,
)
from framework.test_suite import TestSuite, func_test
-from framework.testbed_model.capability import TopologyType, requires
+from framework.testbed_model.capability import requires
-@requires(topology_type=TopologyType.two_links)
class TestUniPkt(TestSuite):
"""DPDK Unified packet test suite.
diff --git a/dts/tests/TestSuite_vlan.py b/dts/tests/TestSuite_vlan.py
index d2a9e614d4..eeeb036a1d 100644
--- a/dts/tests/TestSuite_vlan.py
+++ b/dts/tests/TestSuite_vlan.py
@@ -17,11 +17,10 @@
from framework.remote_session.testpmd_shell import SimpleForwardingModes, TestPmdShell
from framework.test_suite import TestSuite, func_test
-from framework.testbed_model.capability import NicCapability, TopologyType, requires
+from framework.testbed_model.capability import NicCapability, requires
@requires(NicCapability.RX_OFFLOAD_VLAN_FILTER)
-@requires(topology_type=TopologyType.two_links)
class TestVlan(TestSuite):
"""DPDK VLAN test suite.
--
2.50.1
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2025-08-20 14:07 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-07-23 13:50 [PATCH v1] dts: make one link the default topology Dean Marx
2025-07-28 12:15 ` Luca Vizzarro
2025-08-07 14:07 ` [PATCH v2 1/2] dts: rewrite two link topology requirements Dean Marx
2025-08-07 14:07 ` [PATCH v2 2/2] dts: make one link the default topology Dean Marx
2025-08-11 10:47 ` Luca Vizzarro
2025-08-11 10:47 ` [PATCH v2 1/2] dts: rewrite two link topology requirements Luca Vizzarro
2025-08-11 10:50 ` Luca Vizzarro
2025-08-20 14:06 ` [PATCH v3 0/2] dts: change default topology to one link Dean Marx
2025-08-20 14:06 ` [PATCH v3 1/2] dts: make one link the default topology Dean Marx
2025-08-20 14:06 ` [PATCH v3 2/2] dts: rewrite two link topology requirements Dean Marx
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).