Lines Matching refs:actions
675 int tcf_action_exec(struct sk_buff *skb, struct tc_action **actions, in tcf_action_exec() argument
688 const struct tc_action *a = actions[i]; in tcf_action_exec()
736 int tcf_action_destroy(struct tc_action *actions[], int bind) in tcf_action_destroy() argument
742 for (i = 0; i < TCA_ACT_MAX_PRIO && actions[i]; i++) { in tcf_action_destroy()
743 a = actions[i]; in tcf_action_destroy()
744 actions[i] = NULL; in tcf_action_destroy()
761 static void tcf_action_put_many(struct tc_action *actions[]) in tcf_action_put_many() argument
766 struct tc_action *a = actions[i]; in tcf_action_put_many()
851 int tcf_action_dump(struct sk_buff *skb, struct tc_action *actions[], in tcf_action_dump() argument
858 for (i = 0; i < TCA_ACT_MAX_PRIO && actions[i]; i++) { in tcf_action_dump()
859 a = actions[i]; in tcf_action_dump()
919 void tcf_idr_insert_many(struct tc_action *actions[]) in tcf_idr_insert_many() argument
924 struct tc_action *a = actions[i]; in tcf_idr_insert_many()
1062 struct tc_action *actions[], int init_res[], size_t *attr_size, in tcf_action_init() argument
1098 actions[i - 1] = act; in tcf_action_init()
1104 tcf_idr_insert_many(actions); in tcf_action_init()
1111 tcf_action_destroy(actions, bind); in tcf_action_init()
1187 static int tca_get_fill(struct sk_buff *skb, struct tc_action *actions[], in tca_get_fill() argument
1208 if (tcf_action_dump(skb, actions, bind, ref, false) < 0) in tca_get_fill()
1223 struct tc_action *actions[], int event, in tcf_get_notify() argument
1231 if (tca_get_fill(skb, actions, portid, n->nlmsg_seq, 0, event, in tcf_get_notify()
1363 static int tcf_action_delete(struct net *net, struct tc_action *actions[]) in tcf_action_delete() argument
1367 for (i = 0; i < TCA_ACT_MAX_PRIO && actions[i]; i++) { in tcf_action_delete()
1368 struct tc_action *a = actions[i]; in tcf_action_delete()
1376 actions[i] = NULL; in tcf_action_delete()
1393 tcf_del_notify(struct net *net, struct nlmsghdr *n, struct tc_action *actions[], in tcf_del_notify() argument
1404 if (tca_get_fill(skb, actions, portid, n->nlmsg_seq, 0, RTM_DELACTION, in tcf_del_notify()
1412 ret = tcf_action_delete(net, actions); in tcf_del_notify()
1434 struct tc_action *actions[TCA_ACT_MAX_PRIO] = {}; in tca_action_gd() local
1456 actions[i - 1] = act; in tca_action_gd()
1462 ret = tcf_get_notify(net, portid, n, actions, event, extack); in tca_action_gd()
1464 ret = tcf_del_notify(net, n, actions, portid, attr_size, extack); in tca_action_gd()
1470 tcf_action_put_many(actions); in tca_action_gd()
1475 tcf_add_notify(struct net *net, struct nlmsghdr *n, struct tc_action *actions[], in tcf_add_notify() argument
1486 if (tca_get_fill(skb, actions, portid, n->nlmsg_seq, n->nlmsg_flags, in tcf_add_notify()
1506 struct tc_action *actions[TCA_ACT_MAX_PRIO] = {}; in tcf_action_add() local
1511 actions, init_res, &attr_size, true, extack); in tcf_action_add()
1518 ret = tcf_add_notify(net, n, actions, portid, attr_size, extack); in tcf_action_add()
1523 actions[i] = NULL; in tcf_action_add()
1524 tcf_action_put_many(actions); in tcf_action_add()