Message ID | 20250415124317.11561-3-chia-yu.chang@nokia-bell-labs.com (mailing list archive) |
---|---|
State | Under Review |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | DUALPI2 patch | expand |
On Tue, 15 Apr 2025 14:43:14 +0200 chia-yu.chang@nokia-bell-labs.com wrote: > From: Chia-Yu Chang <chia-yu.chang@nokia-bell-labs.com> > > Update configuration of tc-tests and preload DualPI2 module for self-tests, > and add folloiwng self-test cases for DualPI2: > > Test a4c7: Create DualPI2 with default setting > Test 2130: Create DualPI2 with typical_rtt and max_rtt > Test 90c1: Create DualPI2 with max_rtt > Test 7b3c: Create DualPI2 with any_ect option > Test 49a3: Create DualPI2 with overflow option > Test d0a1: Create DualPI2 with drop_enqueue option > Test f051: Create DualPI2 with no_split_gso option it appears applying this causes the tdc test runner to break, could you take a look? https://github.com/p4tc-dev/tc-executor/blob/storage/artifacts/79725/1-tdc-sh/stdout
On 4/16/25 10:52, Jakub Kicinski wrote: > On Tue, 15 Apr 2025 14:43:14 +0200 chia-yu.chang@nokia-bell-labs.com > wrote: >> From: Chia-Yu Chang <chia-yu.chang@nokia-bell-labs.com> >> >> Update configuration of tc-tests and preload DualPI2 module for self-tests, >> and add folloiwng self-test cases for DualPI2: >> >> Test a4c7: Create DualPI2 with default setting >> Test 2130: Create DualPI2 with typical_rtt and max_rtt >> Test 90c1: Create DualPI2 with max_rtt >> Test 7b3c: Create DualPI2 with any_ect option >> Test 49a3: Create DualPI2 with overflow option >> Test d0a1: Create DualPI2 with drop_enqueue option >> Test f051: Create DualPI2 with no_split_gso option > > it appears applying this causes the tdc test runner to break, > could you take a look? > > https://github.com/p4tc-dev/tc-executor/blob/storage/artifacts/79725/1-tdc-sh/stdout It seems like the breakage happens because the iproute2 patch is not in yet. I applied the iproute2 patch locally and the tests succeeded. The next iteration should run with it applied so the breakage should stop. cheers, Victor
On Wed, 16 Apr 2025 11:00:35 -0300 Victor Nogueira wrote: > On 4/16/25 10:52, Jakub Kicinski wrote: > > On Tue, 15 Apr 2025 14:43:14 +0200 chia-yu.chang@nokia-bell-labs.com > > wrote: > >> From: Chia-Yu Chang <chia-yu.chang@nokia-bell-labs.com> > >> > >> Update configuration of tc-tests and preload DualPI2 module for self-tests, > >> and add folloiwng self-test cases for DualPI2: > >> > >> Test a4c7: Create DualPI2 with default setting > >> Test 2130: Create DualPI2 with typical_rtt and max_rtt > >> Test 90c1: Create DualPI2 with max_rtt > >> Test 7b3c: Create DualPI2 with any_ect option > >> Test 49a3: Create DualPI2 with overflow option > >> Test d0a1: Create DualPI2 with drop_enqueue option > >> Test f051: Create DualPI2 with no_split_gso option > > > > it appears applying this causes the tdc test runner to break, > > could you take a look? > > > > https://github.com/p4tc-dev/tc-executor/blob/storage/artifacts/79725/1-tdc-sh/stdout > > It seems like the breakage happens because the iproute2 patch > is not in yet. I applied the iproute2 patch locally and the > tests succeeded. The next iteration should run with it applied > so the breakage should stop. Thank you! returned the patches to the queue, the net-next-2025-04-17--00-00 branch should have them again.
On 4/15/25 09:43, chia-yu.chang@nokia-bell-labs.com wrote: > From: Chia-Yu Chang <chia-yu.chang@nokia-bell-labs.com> > > Update configuration of tc-tests and preload DualPI2 module for self-tests, > and add folloiwng self-test cases for DualPI2: > > Test a4c7: Create DualPI2 with default setting > Test 2130: Create DualPI2 with typical_rtt and max_rtt > Test 90c1: Create DualPI2 with max_rtt > Test 7b3c: Create DualPI2 with any_ect option > Test 49a3: Create DualPI2 with overflow option > Test d0a1: Create DualPI2 with drop_enqueue option > Test f051: Create DualPI2 with no_split_gso option > > Signed-off-by: Chia-Yu Chang <chia-yu.chang@nokia-bell-labs.com> Reviewed-by: Victor Nogueira <victor@mojatatu.com>
diff --git a/tools/testing/selftests/tc-testing/config b/tools/testing/selftests/tc-testing/config index db176fe7d0c3..72b5f36f6731 100644 --- a/tools/testing/selftests/tc-testing/config +++ b/tools/testing/selftests/tc-testing/config @@ -30,6 +30,7 @@ CONFIG_NET_SCH_CBS=m CONFIG_NET_SCH_CHOKE=m CONFIG_NET_SCH_CODEL=m CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_DUALPI2=m CONFIG_NET_SCH_ETF=m CONFIG_NET_SCH_FQ=m CONFIG_NET_SCH_FQ_CODEL=m diff --git a/tools/testing/selftests/tc-testing/tc-tests/qdiscs/dualpi2.json b/tools/testing/selftests/tc-testing/tc-tests/qdiscs/dualpi2.json new file mode 100644 index 000000000000..1080074f2650 --- /dev/null +++ b/tools/testing/selftests/tc-testing/tc-tests/qdiscs/dualpi2.json @@ -0,0 +1,149 @@ +[ + { + "id": "a4c7", + "name": "Create DualPI2 with default setting", + "category": [ + "qdisc", + "dualpi2" + ], + "plugins": { + "requires": "nsPlugin" + }, + "setup": [ + ], + "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root dualpi2", + "expExitCode": "0", + "verifyCmd": "$TC qdisc show dev $DUMMY", + "matchPattern": "qdisc dualpi2 1: root refcnt [0-9]+ limit 10000p.* l4s_ect.* drop_on_overload.* drop_dequeue.* split_gso.*", + "matchCount": "1", + "teardown": [ + "$TC qdisc del dev $DUMMY handle 1: root" + ] + }, + { + "id": "2130", + "name": "Create DualPI2 with typical_rtt and max_rtt", + "category": [ + "qdisc", + "dualpi2" + ], + "plugins": { + "requires": "nsPlugin" + }, + "setup": [ + ], + "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root dualpi2 typical_rtt 20ms max_rtt 200ms", + "expExitCode": "0", + "verifyCmd": "$TC qdisc show dev $DUMMY", + "matchPattern": "qdisc dualpi2 1: root refcnt [0-9]+ limit 10000p.* target 20ms tupdate 20ms alpha 0.042969 beta 1.496094", + "matchCount": "1", + "teardown": [ + "$TC qdisc del dev $DUMMY handle 1: root" + ] + }, + { + "id": "90c1", + "name": "Create DualPI2 with max_rtt", + "category": [ + "qdisc", + "dualpi2" + ], + "plugins": { + "requires": "nsPlugin" + }, + "setup": [ + ], + "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root dualpi2 max_rtt 300ms", + "expExitCode": "0", + "verifyCmd": "$TC qdisc show dev $DUMMY", + "matchPattern": "qdisc dualpi2 1: root refcnt [0-9]+ limit 10000p.* target 50ms tupdate 50ms alpha 0.050781 beta 0.996094", + "matchCount": "1", + "teardown": [ + "$TC qdisc del dev $DUMMY handle 1: root" + ] + }, + { + "id": "7b3c", + "name": "Create DualPI2 with any_ect option", + "category": [ + "qdisc", + "dualpi2" + ], + "plugins": { + "requires": "nsPlugin" + }, + "setup": [ + ], + "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root dualpi2 any_ect", + "expExitCode": "0", + "verifyCmd": "$TC qdisc show dev $DUMMY", + "matchPattern": "qdisc dualpi2 1: root refcnt [0-9]+ limit 10000p .* any_ect", + "matchCount": "1", + "teardown": [ + "$TC qdisc del dev $DUMMY handle 1: root" + ] + }, + { + "id": "49a3", + "name": "Create DualPI2 with overflow option", + "category": [ + "qdisc", + "dualpi2" + ], + "plugins": { + "requires": "nsPlugin" + }, + "setup": [ + ], + "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root dualpi2 overflow", + "expExitCode": "0", + "verifyCmd": "$TC qdisc show dev $DUMMY", + "matchPattern": "qdisc dualpi2 1: root refcnt [0-9]+ limit 10000p.* overflow", + "matchCount": "1", + "teardown": [ + "$TC qdisc del dev $DUMMY handle 1: root" + ] + }, + { + "id": "d0a1", + "name": "Create DualPI2 with drop_enqueue option", + "category": [ + "qdisc", + "dualpi2" + ], + "plugins": { + "requires": "nsPlugin" + }, + "setup": [ + ], + "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root dualpi2 drop_enqueue", + "expExitCode": "0", + "verifyCmd": "$TC qdisc show dev $DUMMY", + "matchPattern": "qdisc dualpi2 1: root refcnt [0-9]+ limit 10000p .* drop_enqueue", + "matchCount": "1", + "teardown": [ + "$TC qdisc del dev $DUMMY handle 1: root" + ] + }, + { + "id": "f051", + "name": "Create DualPI2 with no_split_gso option", + "category": [ + "qdisc", + "dualpi2" + ], + "plugins": { + "requires": "nsPlugin" + }, + "setup": [ + ], + "cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root dualpi2 no_split_gso", + "expExitCode": "0", + "verifyCmd": "$TC qdisc show dev $DUMMY", + "matchPattern": "qdisc dualpi2 1: root refcnt [0-9]+ limit 10000p .* no_split_gso", + "matchCount": "1", + "teardown": [ + "$TC qdisc del dev $DUMMY handle 1: root" + ] + } +] diff --git a/tools/testing/selftests/tc-testing/tdc.sh b/tools/testing/selftests/tc-testing/tdc.sh index 589b18ed758a..2316bfdd0b4e 100755 --- a/tools/testing/selftests/tc-testing/tdc.sh +++ b/tools/testing/selftests/tc-testing/tdc.sh @@ -67,4 +67,5 @@ try_modprobe sch_hfsc try_modprobe sch_hhf try_modprobe sch_htb try_modprobe sch_teql +try_modprobe sch_dualpi2 ./tdc.py -J`nproc`