Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

selftests/tc-testing: add tests for qdisc_tree_reduce_backlog

Add 3 tests to check for the expected behaviour of
qdisc_tree_reduce_backlog in special scenarios.

- The first test checks if the qdisc class is notified of deletion for
major handle 'ffff:'.
- The second test checks the same as the first test but with 'ffff:' as the root
qdisc.
- The third test checks if everything works if ingress is active.

Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: Pedro Tammela <pctammela@mojatatu.com>
Acked-by: Cong Wang <cong.wang@bytedance.com>
Link: https://patch.msgid.link/20241101143148.1218890-1-pctammela@mojatatu.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

authored by

Pedro Tammela and committed by
Jakub Kicinski
9ff75a23 74a11428

+98
+98
tools/testing/selftests/tc-testing/tc-tests/infra/qdiscs.json
··· 1 + [ 2 + { 3 + "id": "ca5e", 4 + "name": "Check class delete notification for ffff:", 5 + "category": [ 6 + "qdisc" 7 + ], 8 + "plugins": { 9 + "requires": "nsPlugin" 10 + }, 11 + "setup": [ 12 + "$IP link set dev $DUMMY up || true", 13 + "$IP addr add 10.10.10.10/24 dev $DUMMY || true", 14 + "$TC qdisc add dev $DUMMY root handle 1: drr", 15 + "$TC filter add dev $DUMMY parent 1: basic classid 1:1", 16 + "$TC class add dev $DUMMY parent 1: classid 1:1 drr", 17 + "$TC qdisc add dev $DUMMY parent 1:1 handle ffff: drr", 18 + "$TC filter add dev $DUMMY parent ffff: basic classid ffff:1", 19 + "$TC class add dev $DUMMY parent ffff: classid ffff:1 drr", 20 + "$TC qdisc add dev $DUMMY parent ffff:1 netem delay 1s", 21 + "ping -c1 -W0.01 -I $DUMMY 10.10.10.1 || true", 22 + "$TC class del dev $DUMMY classid ffff:1", 23 + "$TC class add dev $DUMMY parent ffff: classid ffff:1 drr" 24 + ], 25 + "cmdUnderTest": "ping -c1 -W0.01 -I $DUMMY 10.10.10.1", 26 + "expExitCode": "1", 27 + "verifyCmd": "$TC -s qdisc ls dev $DUMMY", 28 + "matchPattern": "drr 1: root", 29 + "matchCount": "1", 30 + "teardown": [ 31 + "$TC qdisc del dev $DUMMY root handle 1: drr", 32 + "$IP addr del 10.10.10.10/24 dev $DUMMY" 33 + ] 34 + }, 35 + { 36 + "id": "e4b7", 37 + "name": "Check class delete notification for root ffff:", 38 + "category": [ 39 + "qdisc" 40 + ], 41 + "plugins": { 42 + "requires": "nsPlugin" 43 + }, 44 + "setup": [ 45 + "$IP link set dev $DUMMY up || true", 46 + "$IP addr add 10.10.10.10/24 dev $DUMMY || true", 47 + "$TC qdisc add dev $DUMMY root handle ffff: drr", 48 + "$TC filter add dev $DUMMY parent ffff: basic classid ffff:1", 49 + "$TC class add dev $DUMMY parent ffff: classid ffff:1 drr", 50 + "$TC qdisc add dev $DUMMY parent ffff:1 netem delay 1s", 51 + "ping -c1 -W0.01 -I $DUMMY 10.10.10.1 || true", 52 + "$TC class del dev $DUMMY classid ffff:1", 53 + "$TC class add dev $DUMMY parent ffff: classid ffff:1 drr" 54 + ], 55 + "cmdUnderTest": "ping -c1 -W0.01 -I $DUMMY 10.10.10.1", 56 + "expExitCode": "1", 57 + "verifyCmd": "$TC qdisc ls dev $DUMMY", 58 + "matchPattern": "drr ffff: root", 59 + "matchCount": "1", 60 + "teardown": [ 61 + "$TC qdisc del dev $DUMMY root handle ffff: drr", 62 + "$IP addr del 10.10.10.10/24 dev $DUMMY" 63 + ] 64 + }, 65 + { 66 + "id": "33a9", 67 + "name": "Check ingress is not searchable on backlog update", 68 + "category": [ 69 + "qdisc" 70 + ], 71 + "plugins": { 72 + "requires": "nsPlugin" 73 + }, 74 + "setup": [ 75 + "$IP link set dev $DUMMY up || true", 76 + "$IP addr add 10.10.10.10/24 dev $DUMMY || true", 77 + "$TC qdisc add dev $DUMMY ingress", 78 + "$TC qdisc add dev $DUMMY root handle 1: drr", 79 + "$TC filter add dev $DUMMY parent 1: basic classid 1:1", 80 + "$TC class add dev $DUMMY parent 1: classid 1:1 drr", 81 + "$TC qdisc add dev $DUMMY parent 1:1 handle 2: drr", 82 + "$TC filter add dev $DUMMY parent 2: basic classid 2:1", 83 + "$TC class add dev $DUMMY parent 2: classid 2:1 drr", 84 + "$TC qdisc add dev $DUMMY parent 2:1 netem delay 1s", 85 + "ping -c1 -W0.01 -I $DUMMY 10.10.10.1 || true" 86 + ], 87 + "cmdUnderTest": "$TC class del dev $DUMMY classid 2:1", 88 + "expExitCode": "0", 89 + "verifyCmd": "$TC qdisc ls dev $DUMMY", 90 + "matchPattern": "drr 1: root", 91 + "matchCount": "1", 92 + "teardown": [ 93 + "$TC qdisc del dev $DUMMY root handle 1: drr", 94 + "$TC qdisc del dev $DUMMY ingress", 95 + "$IP addr del 10.10.10.10/24 dev $DUMMY" 96 + ] 97 + } 98 + ]