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: Victor Nogueira <victor@mojatatu.com> Acked-by: Jamal Hadi Salim <jhs@mojatatu.com> Link: https://lore.kernel.org/r/20240202020726.529170-1-victor@mojatatu.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
committed by
Jakub Kicinski
parent
709990df5e
commit
f51470c5c4
@@ -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"
|
||||
]
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user