linux-loongson/tools/testing/selftests/tc-testing/tc-tests/qdiscs/fifo.json
Quang Le 3fe5648d1d selftests/tc-testing: Add a test case for pfifo_head_drop qdisc when limit==0
When limit == 0, pfifo_tail_enqueue() must drop new packet and
increase dropped packets count of the qdisc.

All test results:

1..16
ok 1 a519 - Add bfifo qdisc with system default parameters on egress
ok 2 585c - Add pfifo qdisc with system default parameters on egress
ok 3 a86e - Add bfifo qdisc with system default parameters on egress with handle of maximum value
ok 4 9ac8 - Add bfifo qdisc on egress with queue size of 3000 bytes
ok 5 f4e6 - Add pfifo qdisc on egress with queue size of 3000 packets
ok 6 b1b1 - Add bfifo qdisc with system default parameters on egress with invalid handle exceeding maximum value
ok 7 8d5e - Add bfifo qdisc on egress with unsupported argument
ok 8 7787 - Add pfifo qdisc on egress with unsupported argument
ok 9 c4b6 - Replace bfifo qdisc on egress with new queue size
ok 10 3df6 - Replace pfifo qdisc on egress with new queue size
ok 11 7a67 - Add bfifo qdisc on egress with queue size in invalid format
ok 12 1298 - Add duplicate bfifo qdisc on egress
ok 13 45a0 - Delete nonexistent bfifo qdisc
ok 14 972b - Add prio qdisc on egress with invalid format for handles
ok 15 4d39 - Delete bfifo qdisc twice
ok 16 d774 - Check pfifo_head_drop qdisc enqueue behaviour when limit == 0

Signed-off-by: Quang Le <quanglex97@gmail.com>
Signed-off-by: Cong Wang <cong.wang@bytedance.com>
Link: https://patch.msgid.link/20250204005841.223511-3-xiyou.wangcong@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-02-05 18:14:46 -08:00

342 lines
9.7 KiB
JSON

[
{
"id": "a519",
"name": "Add bfifo qdisc with system default parameters on egress",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
],
"cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root bfifo",
"expExitCode": "0",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc bfifo 1: root.*limit [0-9]+b",
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DUMMY handle 1: root bfifo"
]
},
{
"id": "585c",
"name": "Add pfifo qdisc with system default parameters on egress",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
],
"cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root pfifo",
"expExitCode": "0",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc pfifo 1: root.*limit [0-9]+p",
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DUMMY handle 1: root pfifo"
]
},
{
"id": "a86e",
"name": "Add bfifo qdisc with system default parameters on egress with handle of maximum value",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
],
"cmdUnderTest": "$TC qdisc add dev $DUMMY root handle ffff: bfifo",
"expExitCode": "0",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc bfifo ffff: root.*limit [0-9]+b",
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DUMMY handle ffff: root bfifo"
]
},
{
"id": "9ac8",
"name": "Add bfifo qdisc on egress with queue size of 3000 bytes",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
],
"cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root bfifo limit 3000b",
"expExitCode": "0",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc bfifo 1: root.*limit 3000b",
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DUMMY handle 1: root bfifo"
]
},
{
"id": "f4e6",
"name": "Add pfifo qdisc on egress with queue size of 3000 packets",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
"$IP link set dev $DUMMY txqueuelen 3000"
],
"cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root pfifo limit 3000",
"expExitCode": "0",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc pfifo 1: root.*limit 3000p",
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DUMMY handle 1: root pfifo"
]
},
{
"id": "b1b1",
"name": "Add bfifo qdisc with system default parameters on egress with invalid handle exceeding maximum value",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
],
"cmdUnderTest": "$TC qdisc add dev $DUMMY root handle 10000: bfifo",
"expExitCode": "255",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc bfifo 10000: root.*limit [0-9]+b",
"matchCount": "0",
"teardown": [
]
},
{
"id": "8d5e",
"name": "Add bfifo qdisc on egress with unsupported argument",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
],
"cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root bfifo foorbar",
"expExitCode": "1",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc bfifo 1: root",
"matchCount": "0",
"teardown": [
]
},
{
"id": "7787",
"name": "Add pfifo qdisc on egress with unsupported argument",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
],
"cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root pfifo foorbar",
"expExitCode": "1",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc pfifo 1: root",
"matchCount": "0",
"teardown": [
]
},
{
"id": "c4b6",
"name": "Replace bfifo qdisc on egress with new queue size",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
"$IP link set dev $DUMMY txqueuelen 1000",
"$TC qdisc add dev $DUMMY handle 1: root bfifo"
],
"cmdUnderTest": "$TC qdisc replace dev $DUMMY handle 1: root bfifo limit 3000b",
"expExitCode": "0",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc bfifo 1: root.*limit 3000b",
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DUMMY handle 1: root bfifo"
]
},
{
"id": "3df6",
"name": "Replace pfifo qdisc on egress with new queue size",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
"$IP link set dev $DUMMY txqueuelen 1000",
"$TC qdisc add dev $DUMMY handle 1: root pfifo"
],
"cmdUnderTest": "$TC qdisc replace dev $DUMMY handle 1: root pfifo limit 30",
"expExitCode": "0",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc pfifo 1: root.*limit 30p",
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DUMMY handle 1: root pfifo"
]
},
{
"id": "7a67",
"name": "Add bfifo qdisc on egress with queue size in invalid format",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
],
"cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root bfifo limit foo-bar",
"expExitCode": "1",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc bfifo 1: root.*limit foo-bar",
"matchCount": "0",
"teardown": [
]
},
{
"id": "1298",
"name": "Add duplicate bfifo qdisc on egress",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
"$TC qdisc add dev $DUMMY handle 1: root bfifo"
],
"cmdUnderTest": "$TC qdisc add dev $DUMMY handle 1: root bfifo",
"expExitCode": "2",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc bfifo 1: root",
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DUMMY handle 1: root bfifo"
]
},
{
"id": "45a0",
"name": "Delete nonexistent bfifo qdisc",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
],
"cmdUnderTest": "$TC qdisc del dev $DUMMY root handle 1: bfifo",
"expExitCode": "2",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc bfifo 1: root",
"matchCount": "0",
"teardown": [
]
},
{
"id": "972b",
"name": "Add prio qdisc on egress with invalid format for handles",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
],
"cmdUnderTest": "$TC qdisc add dev $DUMMY root handle 123^ bfifo limit 100b",
"expExitCode": "255",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc bfifo 123 root",
"matchCount": "0",
"teardown": [
]
},
{
"id": "4d39",
"name": "Delete bfifo qdisc twice",
"category": [
"qdisc",
"fifo"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
"$TC qdisc add dev $DUMMY root handle 1: bfifo",
"$TC qdisc del dev $DUMMY root handle 1: bfifo"
],
"cmdUnderTest": "$TC qdisc del dev $DUMMY handle 1: root bfifo",
"expExitCode": "2",
"verifyCmd": "$TC qdisc show dev $DUMMY",
"matchPattern": "qdisc bfifo 1: root",
"matchCount": "0",
"teardown": [
]
},
{
"id": "d774",
"name": "Check pfifo_head_drop qdisc enqueue behaviour when limit == 0",
"category": [
"qdisc",
"pfifo_head_drop"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
"$IP addr add 10.10.10.10/24 dev $DUMMY || true",
"$TC qdisc add dev $DUMMY root handle 1: pfifo_head_drop limit 0",
"$IP link set dev $DUMMY up || true"
],
"cmdUnderTest": "ping -c2 -W0.01 -I $DUMMY 10.10.10.1",
"expExitCode": "1",
"verifyCmd": "$TC -s qdisc show dev $DUMMY",
"matchPattern": "dropped 2",
"matchCount": "1",
"teardown": [
]
}
]