xref: /linux/tools/testing/selftests/tc-testing/tc-tests/actions/batch-delete.json (revision 14c5eb685cdefbd32e73d2723071ecbd8effbce9)
1[
2    {
3        "id": "d710",
4        "name": "Release tail references after first action deletion fails",
5        "category": [
6            "actions",
7            "gact"
8        ],
9        "plugins": {
10            "requires": "nsPlugin"
11        },
12        "setup": [
13            [
14                "$TC actions flush action gact",
15                0,
16                1,
17                255
18            ],
19            "$TC qdisc add dev $DEV1 ingress",
20            "$TC actions add action pass index 1",
21            "$TC actions add action pass index 2",
22            "$TC actions add action pass index 3",
23            "$TC filter add dev $DEV1 protocol ip ingress u32 match u32 0 0 action gact index 1"
24        ],
25        "cmdUnderTest": "$TC actions del action gact index 1 action gact index 2 action gact index 3",
26        "expExitCode": "255",
27        "verifyCmd": "$TC actions ls action gact",
28        "matchPattern": "total acts 3\\b.*index 1 ref 2 bind 1\\b.*index 2 ref 1 bind 0\\b.*index 3 ref 1 bind 0\\b",
29        "matchCount": "1",
30        "teardown": [
31            "$TC qdisc del dev $DEV1 ingress",
32            [
33                "$TC actions flush action gact",
34                0,
35                1,
36                255
37            ]
38        ]
39    },
40    {
41        "id": "d711",
42        "name": "Release tail references after middle action deletion fails",
43        "category": [
44            "actions",
45            "gact"
46        ],
47        "plugins": {
48            "requires": "nsPlugin"
49        },
50        "setup": [
51            [
52                "$TC actions flush action gact",
53                0,
54                1,
55                255
56            ],
57            "$TC qdisc add dev $DEV1 ingress",
58            "$TC actions add action pass index 1",
59            "$TC actions add action pass index 2",
60            "$TC actions add action pass index 3",
61            "$TC filter add dev $DEV1 protocol ip ingress u32 match u32 0 0 action gact index 2"
62        ],
63        "cmdUnderTest": "$TC actions del action gact index 1 action gact index 2 action gact index 3",
64        "expExitCode": "255",
65        "verifyCmd": "$TC actions ls action gact",
66        "matchPattern": "total acts 2\\b.*index 2 ref 2 bind 1\\b.*index 3 ref 1 bind 0\\b",
67        "matchCount": "1",
68        "teardown": [
69            "$TC qdisc del dev $DEV1 ingress",
70            [
71                "$TC actions flush action gact",
72                0,
73                1,
74                255
75            ]
76        ]
77    },
78    {
79        "id": "d713",
80        "name": "Delete a tail action once after a failed batch",
81        "category": [
82            "actions",
83            "gact"
84        ],
85        "plugins": {
86            "requires": "nsPlugin"
87        },
88        "setup": [
89            [
90                "$TC actions flush action gact",
91                0,
92                1,
93                255
94            ],
95            "$TC qdisc add dev $DEV1 ingress",
96            "$TC actions add action pass index 1",
97            "$TC actions add action pass index 2",
98            "$TC filter add dev $DEV1 protocol ip ingress u32 match u32 0 0 action gact index 1"
99        ],
100        "cmdUnderTest": "$TC actions del action gact index 1 action gact index 2",
101        "expExitCode": "255",
102        "verifyCmd": "sh -c '$TC actions del action gact index 2 && $TC actions ls action gact'",
103        "matchPattern": "total acts 1\\b.*index 1 ref 2 bind 1\\b",
104        "matchCount": "1",
105        "teardown": [
106            "$TC qdisc del dev $DEV1 ingress",
107            [
108                "$TC actions flush action gact",
109                0,
110                1,
111                255
112            ]
113        ]
114    }
115]
116