Home
last modified time | relevance | path

Searched refs:flow_action (Results 1 – 25 of 36) sorted by relevance

12

/linux-6.1.9/drivers/net/ethernet/mellanox/mlx5/core/en/tc/act/
Dact.c76 struct flow_action *flow_action, in mlx5e_tc_act_init_parse_state() argument
82 parse_state->flow_action = flow_action; in mlx5e_tc_act_init_parse_state()
86 mlx5e_tc_act_reorder_flow_actions(struct flow_action *flow_action, in mlx5e_tc_act_reorder_flow_actions() argument
92 flow_action_for_each(i, act, flow_action) { in mlx5e_tc_act_reorder_flow_actions()
98 flow_action_for_each(i, act, flow_action) { in mlx5e_tc_act_reorder_flow_actions()
107 struct flow_action *flow_action, in mlx5e_tc_act_post_parse() argument
118 flow_action_for_each(i, act, flow_action) { in mlx5e_tc_act_post_parse()
Dact.h16 struct flow_action *flow_action; member
98 struct flow_action *flow_action,
102 mlx5e_tc_act_reorder_flow_actions(struct flow_action *flow_action,
107 struct flow_action *flow_action,
Dtrap.c15 if (parse_state->flow_action->num_entries != 1) { in tc_act_can_offload_trap()
Dpolice.c19 if (mlx5e_policer_validate(parse_state->flow_action, act, in tc_act_can_offload_police()
/linux-6.1.9/include/net/
Dflow_offload.h318 struct flow_action { struct
323 static inline bool flow_action_has_entries(const struct flow_action *action) in flow_action_has_entries() argument
334 static inline bool flow_offload_has_one_action(const struct flow_action *action) in flow_offload_has_one_action()
339 static inline bool flow_action_is_last_entry(const struct flow_action *action, in flow_action_is_last_entry()
351 flow_action_mixed_hw_stats_check(const struct flow_action *action, in flow_action_mixed_hw_stats_check()
372 flow_action_first_entry_get(const struct flow_action *action) in flow_action_first_entry_get()
379 __flow_action_hw_stats_check(const struct flow_action *action, in __flow_action_hw_stats_check()
409 flow_action_hw_stats_check(const struct flow_action *action, in flow_action_hw_stats_check()
417 flow_action_basic_hw_stats_check(const struct flow_action *action, in flow_action_basic_hw_stats_check()
425 struct flow_action action;
[all …]
Dpkt_cls.h574 int tc_setup_offload_action(struct flow_action *flow_action,
577 void tc_cleanup_offload_action(struct flow_action *flow_action);
578 int tc_setup_action(struct flow_action *flow_action,
/linux-6.1.9/drivers/net/ethernet/chelsio/cxgb4/
Dcxgb4_tc_flower.h127 struct flow_action *actions,
130 struct flow_action *actions,
Dcxgb4_tc_matchall.c11 static int cxgb4_policer_validate(const struct flow_action *action, in cxgb4_policer_validate()
55 struct flow_action *actions = &cls->rule->action; in cxgb4_matchall_egress_validate()
Dcxgb4_tc_flower.c492 struct flow_action *actions, in cxgb4_process_flow_actions()
683 struct flow_action *actions, in cxgb4_validate_flow_actions()
/linux-6.1.9/drivers/net/ethernet/mellanox/mlxsw/
Dspectrum_flower.c18 static int mlxsw_sp_policer_validate(const struct flow_action *action, in mlxsw_sp_policer_validate()
61 struct flow_action *flow_action, in mlxsw_sp_flower_parse_actions() argument
70 if (!flow_action_has_entries(flow_action)) in mlxsw_sp_flower_parse_actions()
72 if (!flow_action_mixed_hw_stats_check(flow_action, extack)) in mlxsw_sp_flower_parse_actions()
75 act = flow_action_first_entry_get(flow_action); in mlxsw_sp_flower_parse_actions()
88 flow_action_for_each(i, act, flow_action) { in mlxsw_sp_flower_parse_actions()
234 err = mlxsw_sp_policer_validate(flow_action, act, extack); in mlxsw_sp_flower_parse_actions()
/linux-6.1.9/drivers/net/ethernet/marvell/prestera/
Dprestera_flower.c63 struct flow_action *flow_action, in prestera_flower_parse_actions() argument
71 if (!flow_action_has_entries(flow_action)) in prestera_flower_parse_actions()
74 if (!flow_action_mixed_hw_stats_check(flow_action, extack)) in prestera_flower_parse_actions()
77 act = flow_action_first_entry_get(flow_action); in prestera_flower_parse_actions()
92 flow_action_for_each(i, act, flow_action) { in prestera_flower_parse_actions()
/linux-6.1.9/net/sched/
Dact_ct.c61 tcf_ct_flow_table_flow_action_get_next(struct flow_action *flow_action) in tcf_ct_flow_table_flow_action_get_next() argument
63 int i = flow_action->num_entries++; in tcf_ct_flow_table_flow_action_get_next()
65 return &flow_action->entries[i]; in tcf_ct_flow_table_flow_action_get_next()
68 static void tcf_ct_add_mangle_action(struct flow_action *action, in tcf_ct_add_mangle_action()
91 struct flow_action *action) in tcf_ct_flow_table_add_action_nat_ipv4()
106 tcf_ct_add_ipv6_addr_mangle_action(struct flow_action *action, in tcf_ct_add_ipv6_addr_mangle_action()
121 struct flow_action *action) in tcf_ct_flow_table_add_action_nat_ipv6()
136 struct flow_action *action) in tcf_ct_flow_table_add_action_nat_tcp()
154 struct flow_action *action) in tcf_ct_flow_table_add_action_nat_udp()
171 struct flow_action *action) in tcf_ct_flow_table_add_action_meta()
[all …]
Dcls_api.c3493 void tc_cleanup_offload_action(struct flow_action *flow_action) in tc_cleanup_offload_action() argument
3498 flow_action_for_each(i, entry, flow_action) { in tc_cleanup_offload_action()
3524 int tc_setup_action(struct flow_action *flow_action, in tc_setup_action() argument
3542 entry = &flow_action->entries[j]; in tc_setup_action()
3565 tc_cleanup_offload_action(flow_action); in tc_setup_action()
3573 int tc_setup_offload_action(struct flow_action *flow_action, in tc_setup_offload_action() argument
3581 return tc_setup_action(flow_action, exts->actions, extack); in tc_setup_offload_action()
/linux-6.1.9/drivers/net/ethernet/mellanox/mlx5/core/
Den_tc.c2018 struct flow_action *flow_action = &rule->action; in flow_requires_tunnel_mapping() local
2025 flow_action_for_each(i, act, flow_action) { in flow_requires_tunnel_mapping()
3417 struct flow_action *flow_action, in modify_header_match_supported() argument
3441 flow_action_for_each(i, act, flow_action) { in modify_header_match_supported()
3504 struct flow_action *flow_action, in actions_match_supported() argument
3546 !modify_header_match_supported(priv, &parse_attr->spec, flow_action, in actions_match_supported()
3831 struct flow_action *flow_action) in parse_tc_actions() argument
3843 flow_action_reorder.num_entries = flow_action->num_entries; in parse_tc_actions()
3844 flow_action_reorder.entries = kcalloc(flow_action->num_entries, in parse_tc_actions()
3845 sizeof(flow_action), GFP_KERNEL); in parse_tc_actions()
[all …]
/linux-6.1.9/drivers/net/ethernet/marvell/octeontx2/nic/
Dotx2_tc.c206 struct flow_action *actions, in otx2_tc_validate_flow()
227 static int otx2_policer_validate(const struct flow_action *action, in otx2_policer_validate()
265 struct flow_action *actions = &cls->rule->action; in otx2_tc_egress_matchall_install()
377 struct flow_action *flow_action, in otx2_tc_parse_actions() argument
393 if (!flow_action_has_entries(flow_action)) { in otx2_tc_parse_actions()
398 flow_action_for_each(i, act, flow_action) { in otx2_tc_parse_actions()
431 err = otx2_policer_validate(flow_action, act, extack); in otx2_tc_parse_actions()
942 struct flow_action *actions = &cls->rule->action; in otx2_tc_ingress_matchall_install()
/linux-6.1.9/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/
Dhelper.h17 u16 vlan_id, u32 flow_action);
Dhelper.c51 u16 vlan_id, u32 flow_action) in esw_egress_acl_vlan_create() argument
70 flow_act.action = flow_action; in esw_egress_acl_vlan_create()
/linux-6.1.9/drivers/net/ethernet/mscc/
Docelot_police.h37 int ocelot_policer_validate(const struct flow_action *action,
Docelot_police.c161 int ocelot_policer_validate(const struct flow_action *action, in ocelot_policer_validate()
/linux-6.1.9/drivers/net/ethernet/microchip/lan966x/
Dlan966x_police.c75 const struct flow_action *action, in lan966x_police_validate()
136 struct flow_action *action, in lan966x_police_port_add()
/linux-6.1.9/drivers/net/ethernet/qlogic/qede/
Dqede_filter.c1667 struct flow_action *flow_action, in qede_parse_actions() argument
1673 if (!flow_action_has_entries(flow_action)) { in qede_parse_actions()
1678 if (!flow_action_basic_hw_stats_check(flow_action, extack)) in qede_parse_actions()
1681 flow_action_for_each(i, act, flow_action) { in qede_parse_actions()
1939 struct flow_action *flow_action, in qede_flow_spec_validate() argument
1963 if (qede_parse_actions(edev, flow_action, NULL)) in qede_flow_spec_validate()
/linux-6.1.9/drivers/net/ethernet/mellanox/mlx5/core/en/
Dtc_ct.c287 struct flow_action *flow_action = &rule->action; in mlx5_tc_ct_rule_to_tuple_nat() local
292 flow_action_for_each(i, act, flow_action) { in mlx5_tc_ct_rule_to_tuple_nat()
543 struct flow_action *flow_action = &flow_rule->action; in mlx5_tc_ct_get_ct_metadata_action() local
547 flow_action_for_each(i, act, flow_action) { in mlx5_tc_ct_get_ct_metadata_action()
682 struct flow_action *flow_action = &flow_rule->action; in mlx5_tc_ct_entry_create_nat() local
688 flow_action_for_each(i, act, flow_action) { in mlx5_tc_ct_entry_create_nat()
Dtc_priv.h214 int mlx5e_policer_validate(const struct flow_action *action,
/linux-6.1.9/drivers/net/ethernet/intel/ice/
Dice_tc_lib.c1576 struct flow_action *flow_action = &rule->action; in ice_parse_tc_flower_actions() local
1583 if (!flow_action_has_entries(flow_action)) in ice_parse_tc_flower_actions()
1586 flow_action_for_each(i, act, flow_action) { in ice_parse_tc_flower_actions()
/linux-6.1.9/drivers/net/ethernet/broadcom/bnxt/
Dbnxt_tc.c283 struct flow_action *flow_action, in bnxt_tc_parse_actions() argument
299 if (!flow_action_has_entries(flow_action)) { in bnxt_tc_parse_actions()
304 if (!flow_action_basic_hw_stats_check(flow_action, extack)) in bnxt_tc_parse_actions()
307 flow_action_for_each(i, act, flow_action) { in bnxt_tc_parse_actions()

12