Lines Matching refs:ingress

11 	if (vport->ingress.legacy.drop_rule) {
12 mlx5_del_flow_rules(vport->ingress.legacy.drop_rule);
13 vport->ingress.legacy.drop_rule = NULL;
42 g = mlx5_create_flow_group(vport->ingress.acl, flow_group_in);
45 esw_warn(dev, "vport[%d] ingress create untagged spoofchk flow group, err(%d)\n",
49 vport->ingress.legacy.allow_untagged_spoofchk_grp = g;
58 g = mlx5_create_flow_group(vport->ingress.acl, flow_group_in);
61 esw_warn(dev, "vport[%d] ingress create untagged flow group, err(%d)\n",
65 vport->ingress.legacy.allow_untagged_only_grp = g;
75 g = mlx5_create_flow_group(vport->ingress.acl, flow_group_in);
78 esw_warn(dev, "vport[%d] ingress create spoofchk flow group, err(%d)\n",
82 vport->ingress.legacy.allow_spoofchk_only_grp = g;
88 g = mlx5_create_flow_group(vport->ingress.acl, flow_group_in);
91 esw_warn(dev, "vport[%d] ingress create drop flow group, err(%d)\n",
95 vport->ingress.legacy.drop_grp = g;
100 if (!IS_ERR_OR_NULL(vport->ingress.legacy.allow_spoofchk_only_grp)) {
101 mlx5_destroy_flow_group(vport->ingress.legacy.allow_spoofchk_only_grp);
102 vport->ingress.legacy.allow_spoofchk_only_grp = NULL;
105 if (!IS_ERR_OR_NULL(vport->ingress.legacy.allow_untagged_only_grp)) {
106 mlx5_destroy_flow_group(vport->ingress.legacy.allow_untagged_only_grp);
107 vport->ingress.legacy.allow_untagged_only_grp = NULL;
110 if (!IS_ERR_OR_NULL(vport->ingress.legacy.allow_untagged_spoofchk_grp)) {
111 mlx5_destroy_flow_group(vport->ingress.legacy.allow_untagged_spoofchk_grp);
112 vport->ingress.legacy.allow_untagged_spoofchk_grp = NULL;
121 if (vport->ingress.legacy.allow_spoofchk_only_grp) {
122 mlx5_destroy_flow_group(vport->ingress.legacy.allow_spoofchk_only_grp);
123 vport->ingress.legacy.allow_spoofchk_only_grp = NULL;
125 if (vport->ingress.legacy.allow_untagged_only_grp) {
126 mlx5_destroy_flow_group(vport->ingress.legacy.allow_untagged_only_grp);
127 vport->ingress.legacy.allow_untagged_only_grp = NULL;
129 if (vport->ingress.legacy.allow_untagged_spoofchk_grp) {
130 mlx5_destroy_flow_group(vport->ingress.legacy.allow_untagged_spoofchk_grp);
131 vport->ingress.legacy.allow_untagged_spoofchk_grp = NULL;
133 if (vport->ingress.legacy.drop_grp) {
134 mlx5_destroy_flow_group(vport->ingress.legacy.drop_grp);
135 vport->ingress.legacy.drop_grp = NULL;
150 /* The ingress acl table contains 4 groups
166 if (vport->ingress.legacy.drop_counter) {
167 counter = vport->ingress.legacy.drop_counter;
172 "vport[%d] configure ingress drop rule counter failed\n",
176 vport->ingress.legacy.drop_counter = counter;
184 if (!vport->ingress.acl) {
185 vport->ingress.acl = esw_acl_table_create(esw, vport,
188 if (IS_ERR(vport->ingress.acl)) {
189 err = PTR_ERR(vport->ingress.acl);
190 vport->ingress.acl = NULL;
200 "vport[%d] configure ingress rules, vlan(%d) qos(%d)\n",
219 /* Create ingress allow rule */
243 vport->ingress.allow_rule = mlx5_add_flow_rules(vport->ingress.acl, spec,
245 if (IS_ERR(vport->ingress.allow_rule)) {
246 err = PTR_ERR(vport->ingress.allow_rule);
248 "vport[%d] configure ingress allow rule, err(%d)\n",
250 vport->ingress.allow_rule = NULL;
267 vport->ingress.legacy.drop_rule =
268 mlx5_add_flow_rules(vport->ingress.acl, NULL,
270 if (IS_ERR(vport->ingress.legacy.drop_rule)) {
271 err = PTR_ERR(vport->ingress.legacy.drop_rule);
273 "vport[%d] configure ingress drop rule, err(%d)\n",
275 vport->ingress.legacy.drop_rule = NULL;
291 if (IS_ERR_OR_NULL(vport->ingress.acl))
294 esw_debug(esw->dev, "Destroy vport[%d] E-Switch ingress ACL\n", vport->vport);
301 if (vport->ingress.legacy.drop_counter) {
302 mlx5_fc_destroy(esw->dev, vport->ingress.legacy.drop_counter);
303 vport->ingress.legacy.drop_counter = NULL;