Lines Matching refs:actions
719 int tcf_action_exec(struct sk_buff *skb, struct tc_action **actions, in tcf_action_exec() argument
732 const struct tc_action *a = actions[i]; in tcf_action_exec()
771 int tcf_action_destroy(struct tc_action *actions[], int bind) in tcf_action_destroy() argument
777 for (i = 0; i < TCA_ACT_MAX_PRIO && actions[i]; i++) { in tcf_action_destroy()
778 a = actions[i]; in tcf_action_destroy()
779 actions[i] = NULL; in tcf_action_destroy()
796 static void tcf_action_put_many(struct tc_action *actions[]) in tcf_action_put_many() argument
801 struct tc_action *a = actions[i]; in tcf_action_put_many()
858 int tcf_action_dump(struct sk_buff *skb, struct tc_action *actions[], in tcf_action_dump() argument
865 for (i = 0; i < TCA_ACT_MAX_PRIO && actions[i]; i++) { in tcf_action_dump()
866 a = actions[i]; in tcf_action_dump()
926 void tcf_idr_insert_many(struct tc_action *actions[]) in tcf_idr_insert_many() argument
931 struct tc_action *a = actions[i]; in tcf_idr_insert_many()
1067 struct nlattr *est, struct tc_action *actions[], in tcf_action_init() argument
1105 actions[i - 1] = act; in tcf_action_init()
1111 tcf_idr_insert_many(actions); in tcf_action_init()
1118 tcf_action_destroy(actions, flags & TCA_ACT_FLAGS_BIND); in tcf_action_init()
1195 static int tca_get_fill(struct sk_buff *skb, struct tc_action *actions[], in tca_get_fill() argument
1216 if (tcf_action_dump(skb, actions, bind, ref, false) < 0) in tca_get_fill()
1231 struct tc_action *actions[], int event, in tcf_get_notify() argument
1239 if (tca_get_fill(skb, actions, portid, n->nlmsg_seq, 0, event, in tcf_get_notify()
1369 static int tcf_action_delete(struct net *net, struct tc_action *actions[]) in tcf_action_delete() argument
1373 for (i = 0; i < TCA_ACT_MAX_PRIO && actions[i]; i++) { in tcf_action_delete()
1374 struct tc_action *a = actions[i]; in tcf_action_delete()
1382 actions[i] = NULL; in tcf_action_delete()
1399 tcf_del_notify(struct net *net, struct nlmsghdr *n, struct tc_action *actions[], in tcf_del_notify() argument
1410 if (tca_get_fill(skb, actions, portid, n->nlmsg_seq, 0, RTM_DELACTION, in tcf_del_notify()
1418 ret = tcf_action_delete(net, actions); in tcf_del_notify()
1438 struct tc_action *actions[TCA_ACT_MAX_PRIO] = {}; in tca_action_gd() local
1460 actions[i - 1] = act; in tca_action_gd()
1466 ret = tcf_get_notify(net, portid, n, actions, event, extack); in tca_action_gd()
1468 ret = tcf_del_notify(net, n, actions, portid, attr_size, extack); in tca_action_gd()
1474 tcf_action_put_many(actions); in tca_action_gd()
1479 tcf_add_notify(struct net *net, struct nlmsghdr *n, struct tc_action *actions[], in tcf_add_notify() argument
1489 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
1510 ret = tcf_action_init(net, NULL, nla, NULL, actions, init_res, 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()