Commit f51470c5 authored by Victor Nogueira's avatar Victor Nogueira Committed by Jakub Kicinski

selftests: tc-testing: add mirred to block tdc tests

Add 8 new mirred tdc tests that target mirred to block:

- Add mirred mirror to egress block action
- Add mirred mirror to ingress block action
- Add mirred redirect to egress block action
- Add mirred redirect to ingress block action
- Try to add mirred action with both dev and block
- Try to add mirred action without specifying neither dev nor block
- Replace mirred redirect to dev action with redirect to block
- Replace mirred redirect to block action with mirror to dev
Signed-off-by: default avatarVictor Nogueira <victor@mojatatu.com>
Acked-by: default avatarJamal Hadi Salim <jhs@mojatatu.com>
Link: https://lore.kernel.org/r/20240202020726.529170-1-victor@mojatatu.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 709990df
......@@ -649,5 +649,401 @@
"teardown": [
"$TC actions flush action mirred"
]
},
{
"id": "456d",
"name": "Add mirred mirror to egress block action",
"category": [
"actions",
"mirred"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
[
"$TC actions flush action mirred",
0,
1,
255
],
[
"$TC qdisc add dev $DEV1 egress_block 21 clsact",
0
]
],
"cmdUnderTest": "$TC actions add action mirred egress mirror index 1 blockid 21",
"expExitCode": "0",
"verifyCmd": "$TC -j actions get action mirred index 1",
"matchJSON": [
{
"total acts": 0
},
{
"actions": [
{
"order": 1,
"kind": "mirred",
"mirred_action": "mirror",
"direction": "egress",
"to_blockid": 21,
"control_action": {
"type": "pipe"
},
"index": 1,
"ref": 1,
"bind": 0,
"not_in_hw": true
}
]
}
],
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DEV1 egress_block 21 clsact",
"$TC actions flush action mirred"
]
},
{
"id": "2358",
"name": "Add mirred mirror to ingress block action",
"category": [
"actions",
"mirred"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
[
"$TC actions flush action mirred",
0,
1,
255
],
[
"$TC qdisc add dev $DEV1 ingress_block 21 clsact",
0
]
],
"cmdUnderTest": "$TC actions add action mirred ingress mirror index 1 blockid 21",
"expExitCode": "0",
"verifyCmd": "$TC -j actions get action mirred index 1",
"matchJSON": [
{
"total acts": 0
},
{
"actions": [
{
"order": 1,
"kind": "mirred",
"mirred_action": "mirror",
"direction": "ingress",
"to_blockid": 21,
"control_action": {
"type": "pipe"
},
"index": 1,
"ref": 1,
"bind": 0,
"not_in_hw": true
}
]
}
],
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DEV1 ingress_block 21 clsact",
"$TC actions flush action mirred"
]
},
{
"id": "fdb1",
"name": "Add mirred redirect to egress block action",
"category": [
"actions",
"mirred"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
[
"$TC actions flush action mirred",
0,
1,
255
],
[
"$TC qdisc add dev $DEV1 ingress_block 21 clsact",
0
]
],
"cmdUnderTest": "$TC actions add action mirred egress redirect index 1 blockid 21",
"expExitCode": "0",
"verifyCmd": "$TC -j actions get action mirred index 1",
"matchJSON": [
{
"total acts": 0
},
{
"actions": [
{
"order": 1,
"kind": "mirred",
"mirred_action": "redirect",
"direction": "egress",
"to_blockid": 21,
"control_action": {
"type": "stolen"
},
"index": 1,
"ref": 1,
"bind": 0,
"not_in_hw": true
}
]
}
],
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DEV1 ingress_block 21 clsact",
"$TC actions flush action mirred"
]
},
{
"id": "20cc",
"name": "Add mirred redirect to ingress block action",
"category": [
"actions",
"mirred"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
[
"$TC actions flush action mirred",
0,
1,
255
],
[
"$TC qdisc add dev $DEV1 ingress_block 21 clsact",
0
]
],
"cmdUnderTest": "$TC actions add action mirred ingress redirect index 1 blockid 21",
"expExitCode": "0",
"verifyCmd": "$TC -j actions get action mirred index 1",
"matchJSON": [
{
"total acts": 0
},
{
"actions": [
{
"order": 1,
"kind": "mirred",
"mirred_action": "redirect",
"direction": "ingress",
"to_blockid": 21,
"control_action": {
"type": "stolen"
},
"index": 1,
"ref": 1,
"bind": 0,
"not_in_hw": true
}
]
}
],
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DEV1 ingress_block 21 clsact",
"$TC actions flush action mirred"
]
},
{
"id": "e739",
"name": "Try to add mirred action with both dev and block",
"category": [
"actions",
"mirred"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
[
"$TC actions flush action mirred",
0,
1,
255
],
[
"$TC qdisc add dev $DEV1 ingress_block 21 clsact",
0
]
],
"cmdUnderTest": "$TC actions add action mirred ingress redirect index 1 blockid 21 dev $DEV1",
"expExitCode": "255",
"verifyCmd": "$TC -j actions list action mirred",
"matchJSON": [],
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DEV1 ingress_block 21 clsact",
"$TC actions flush action mirred"
]
},
{
"id": "2f47",
"name": "Try to add mirred action without specifying neither dev nor block",
"category": [
"actions",
"mirred"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
[
"$TC actions flush action mirred",
0,
1,
255
],
[
"$TC qdisc add dev $DEV1 ingress_block 21 clsact",
0
]
],
"cmdUnderTest": "$TC actions add action mirred ingress redirect index 1",
"expExitCode": "255",
"verifyCmd": "$TC -j actions list action mirred",
"matchJSON": [],
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DEV1 ingress_block 21 clsact",
"$TC actions flush action mirred"
]
},
{
"id": "3188",
"name": "Replace mirred redirect to dev action with redirect to block",
"category": [
"actions",
"mirred"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
[
"$TC actions flush action mirred",
0,
1,
255
],
[
"$TC qdisc add dev $DEV1 ingress_block 21 clsact",
0
],
[
"$TC actions add action mirred ingress redirect index 1 dev $DEV1",
0
]
],
"cmdUnderTest": "$TC actions replace action mirred egress redirect index 1 blockid 21",
"expExitCode": "0",
"verifyCmd": "$TC -j actions get action mirred index 1",
"matchJSON": [
{
"total acts": 0
},
{
"actions": [
{
"order": 1,
"kind": "mirred",
"mirred_action": "redirect",
"direction": "egress",
"to_blockid": 21,
"control_action": {
"type": "stolen"
},
"index": 1,
"ref": 1,
"bind": 0,
"not_in_hw": true
}
]
}
],
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DEV1 ingress_block 21 clsact",
"$TC actions flush action mirred"
]
},
{
"id": "83cc",
"name": "Replace mirred redirect to block action with mirror to dev",
"category": [
"actions",
"mirred"
],
"plugins": {
"requires": "nsPlugin"
},
"setup": [
[
"$TC actions flush action mirred",
0,
1,
255
],
[
"$TC qdisc add dev $DEV1 ingress_block 21 clsact",
0
],
[
"$TC actions add action mirred egress redirect index 1 blockid 21",
0
]
],
"cmdUnderTest": "$TC actions replace action mirred ingress mirror index 1 dev lo",
"expExitCode": "0",
"verifyCmd": "$TC -j actions get action mirred index 1",
"matchJSON": [
{
"total acts": 0
},
{
"actions": [
{
"order": 1,
"kind": "mirred",
"mirred_action": "mirror",
"direction": "ingress",
"to_dev": "lo",
"control_action": {
"type": "pipe"
},
"index": 1,
"ref": 1,
"bind": 0,
"not_in_hw": true
}
]
}
],
"matchCount": "1",
"teardown": [
"$TC qdisc del dev $DEV1 ingress_block 21 clsact",
"$TC actions flush action mirred"
]
}
]
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment