mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-08-22 00:42:01 +02:00

The test case shown in [1] triggers the kernel to access the null pointer. Therefore, add related test cases to mq. The test results are as follows: ./tdc.py -e 0531 1..1 ok 1 0531 - Replace mq with invalid parent ID ./tdc.py -c mq 1..8 ok 1 ce7d - Add mq Qdisc to multi-queue device (4 queues) ok 2 2f82 - Add mq Qdisc to multi-queue device (256 queues) ok 3 c525 - Add duplicate mq Qdisc ok 4 128a - Delete nonexistent mq Qdisc ok 5 03a9 - Delete mq Qdisc twice ok 6 be0f - Add mq Qdisc to single-queue device ok 7 1023 - Show mq class ok 8 0531 - Replace mq with invalid parent ID [1] https://lore.kernel.org/all/20230527093747.3583502-1-shaozhengchao@huawei.com/ Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com> Reviewed-by: Pedro Tammela <pctammela@mojatatu.com> Link: https://lore.kernel.org/r/20230601012250.52738-1-shaozhengchao@huawei.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
183 lines
4.9 KiB
JSON
183 lines
4.9 KiB
JSON
[
|
|
{
|
|
"id": "ce7d",
|
|
"name": "Add mq Qdisc to multi-queue device (4 queues)",
|
|
"category": [
|
|
"qdisc",
|
|
"mq"
|
|
],
|
|
"plugins": {
|
|
"requires": "nsPlugin"
|
|
},
|
|
"setup": [
|
|
"echo \"1 1 4\" > /sys/bus/netdevsim/new_device"
|
|
],
|
|
"cmdUnderTest": "$TC qdisc add dev $ETH root handle 1: mq",
|
|
"expExitCode": "0",
|
|
"verifyCmd": "$TC qdisc show dev $ETH",
|
|
"matchPattern": "qdisc [a-zA-Z0-9_]+ 0: parent 1:[1-4]",
|
|
"matchCount": "4",
|
|
"teardown": [
|
|
"echo \"1\" > /sys/bus/netdevsim/del_device"
|
|
]
|
|
},
|
|
{
|
|
"id": "2f82",
|
|
"name": "Add mq Qdisc to multi-queue device (256 queues)",
|
|
"category": [
|
|
"qdisc",
|
|
"mq"
|
|
],
|
|
"plugins": {
|
|
"requires": "nsPlugin"
|
|
},
|
|
"setup": [
|
|
"echo \"1 1 256\" > /sys/bus/netdevsim/new_device"
|
|
],
|
|
"cmdUnderTest": "$TC qdisc add dev $ETH root handle 1: mq",
|
|
"expExitCode": "0",
|
|
"verifyCmd": "$TC qdisc show dev $ETH",
|
|
"matchPattern": "qdisc [a-zA-Z0-9_]+ 0: parent 1:[1-9,a-f][0-9,a-f]{0,2}",
|
|
"matchCount": "256",
|
|
"teardown": [
|
|
"echo \"1\" > /sys/bus/netdevsim/del_device"
|
|
]
|
|
},
|
|
{
|
|
"id": "c525",
|
|
"name": "Add duplicate mq Qdisc",
|
|
"category": [
|
|
"qdisc",
|
|
"mq"
|
|
],
|
|
"plugins": {
|
|
"requires": "nsPlugin"
|
|
},
|
|
"setup": [
|
|
"echo \"1 1 4\" > /sys/bus/netdevsim/new_device",
|
|
"$TC qdisc add dev $ETH root handle 1: mq"
|
|
],
|
|
"cmdUnderTest": "$TC qdisc add dev $ETH root handle 1: mq",
|
|
"expExitCode": "2",
|
|
"verifyCmd": "$TC qdisc show dev $ETH",
|
|
"matchPattern": "qdisc [a-zA-Z0-9_]+ 0: parent 1:[1-4]",
|
|
"matchCount": "4",
|
|
"teardown": [
|
|
"echo \"1\" > /sys/bus/netdevsim/del_device"
|
|
]
|
|
},
|
|
{
|
|
"id": "128a",
|
|
"name": "Delete nonexistent mq Qdisc",
|
|
"category": [
|
|
"qdisc",
|
|
"mq"
|
|
],
|
|
"plugins": {
|
|
"requires": "nsPlugin"
|
|
},
|
|
"setup": [
|
|
"echo \"1 1 4\" > /sys/bus/netdevsim/new_device"
|
|
],
|
|
"cmdUnderTest": "$TC qdisc del dev $ETH root handle 1: mq",
|
|
"expExitCode": "2",
|
|
"verifyCmd": "$TC qdisc show dev $ETH",
|
|
"matchPattern": "qdisc [a-zA-Z0-9_]+ 0: parent 1:[1-4]",
|
|
"matchCount": "0",
|
|
"teardown": [
|
|
"echo \"1\" > /sys/bus/netdevsim/del_device"
|
|
]
|
|
},
|
|
{
|
|
"id": "03a9",
|
|
"name": "Delete mq Qdisc twice",
|
|
"category": [
|
|
"qdisc",
|
|
"mq"
|
|
],
|
|
"plugins": {
|
|
"requires": "nsPlugin"
|
|
},
|
|
"setup": [
|
|
"echo \"1 1 4\" > /sys/bus/netdevsim/new_device",
|
|
"$TC qdisc add dev $ETH root handle 1: mq",
|
|
"$TC qdisc del dev $ETH root handle 1: mq"
|
|
],
|
|
"cmdUnderTest": "$TC qdisc del dev $ETH root handle 1: mq",
|
|
"expExitCode": "2",
|
|
"verifyCmd": "$TC qdisc show dev $ETH",
|
|
"matchPattern": "qdisc [a-zA-Z0-9_]+ 0: parent 1:[1-4]",
|
|
"matchCount": "0",
|
|
"teardown": [
|
|
"echo \"1\" > /sys/bus/netdevsim/del_device"
|
|
]
|
|
},
|
|
{
|
|
"id": "be0f",
|
|
"name": "Add mq Qdisc to single-queue device",
|
|
"category": [
|
|
"qdisc",
|
|
"mq"
|
|
],
|
|
"plugins": {
|
|
"requires": "nsPlugin"
|
|
},
|
|
"setup": [
|
|
"echo \"1 1\" > /sys/bus/netdevsim/new_device"
|
|
],
|
|
"cmdUnderTest": "$TC qdisc add dev $ETH root handle 1: mq",
|
|
"expExitCode": "2",
|
|
"verifyCmd": "$TC qdisc show dev $ETH",
|
|
"matchPattern": "qdisc [a-zA-Z0-9_]+ 0: parent 1:[1-4]",
|
|
"matchCount": "0",
|
|
"teardown": [
|
|
"echo \"1\" > /sys/bus/netdevsim/del_device"
|
|
]
|
|
},
|
|
{
|
|
"id": "1023",
|
|
"name": "Show mq class",
|
|
"category": [
|
|
"qdisc",
|
|
"mq"
|
|
],
|
|
"plugins": {
|
|
"requires": "nsPlugin"
|
|
},
|
|
"setup": [
|
|
"echo \"1 1 4\" > /sys/bus/netdevsim/new_device"
|
|
],
|
|
"cmdUnderTest": "$TC qdisc add dev $ETH root handle 1: mq",
|
|
"expExitCode": "0",
|
|
"verifyCmd": "$TC class show dev $ETH",
|
|
"matchPattern": "class mq 1:[0-9]+ root",
|
|
"matchCount": "4",
|
|
"teardown": [
|
|
"echo \"1\" > /sys/bus/netdevsim/del_device"
|
|
]
|
|
},
|
|
{
|
|
"id": "0531",
|
|
"name": "Replace mq with invalid parent ID",
|
|
"category": [
|
|
"qdisc",
|
|
"mq"
|
|
],
|
|
"plugins": {
|
|
"requires": "nsPlugin"
|
|
},
|
|
"setup": [
|
|
"echo \"1 1 16\" > /sys/bus/netdevsim/new_device",
|
|
"$TC qdisc add dev $ETH root handle ffff: mq"
|
|
],
|
|
"cmdUnderTest": "$TC qdisc replace dev $ETH parent ffff:fff1 handle ffff: mq",
|
|
"expExitCode": "2",
|
|
"verifyCmd": "$TC qdisc show dev $ETH",
|
|
"matchPattern": "qdisc [a-zA-Z0-9_]+ 0: parent ffff",
|
|
"matchCount": "16",
|
|
"teardown": [
|
|
"echo \"1\" > /sys/bus/netdevsim/del_device"
|
|
]
|
|
}
|
|
]
|