diff options
author | WANG Cong <xiyou.wangcong@gmail.com> | 2016-08-14 01:34:56 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-08-17 19:27:51 -0400 |
commit | f07fed82ad7994cc4d779ee79bdf7a46848c4b8f (patch) | |
tree | d500cfff9dfbe09544aa9b44e4f5aa75cb174ef4 | |
parent | f4abf05f54ddabacb702d1998296f3e610e62b23 (diff) |
net_sched: remove the leftover cleanup_a()
After refactoring tc_action into tcf_common, we no
longer need to cleanup temporary "actions" in list,
they are permanently stored in the hashtable.
Fixes: a85a970af265 ("net_sched: move tc_action into tcf_common")
Reported-by: Jamal Hadi Salim <jhs@mojatatu.com>
Cc: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/sched/act_api.c | 22 |
1 files changed, 3 insertions, 19 deletions
diff --git a/net/sched/act_api.c b/net/sched/act_api.c index e4a5f2607ffa..cce6986d5bc2 100644 --- a/net/sched/act_api.c +++ b/net/sched/act_api.c | |||
@@ -754,16 +754,6 @@ err_out: | |||
754 | return ERR_PTR(err); | 754 | return ERR_PTR(err); |
755 | } | 755 | } |
756 | 756 | ||
757 | static void cleanup_a(struct list_head *actions) | ||
758 | { | ||
759 | struct tc_action *a, *tmp; | ||
760 | |||
761 | list_for_each_entry_safe(a, tmp, actions, list) { | ||
762 | list_del(&a->list); | ||
763 | kfree(a); | ||
764 | } | ||
765 | } | ||
766 | |||
767 | static int tca_action_flush(struct net *net, struct nlattr *nla, | 757 | static int tca_action_flush(struct net *net, struct nlattr *nla, |
768 | struct nlmsghdr *n, u32 portid) | 758 | struct nlmsghdr *n, u32 portid) |
769 | { | 759 | { |
@@ -905,7 +895,7 @@ tca_action_gd(struct net *net, struct nlattr *nla, struct nlmsghdr *n, | |||
905 | return ret; | 895 | return ret; |
906 | } | 896 | } |
907 | err: | 897 | err: |
908 | cleanup_a(&actions); | 898 | tcf_action_destroy(&actions, 0); |
909 | return ret; | 899 | return ret; |
910 | } | 900 | } |
911 | 901 | ||
@@ -942,15 +932,9 @@ tcf_action_add(struct net *net, struct nlattr *nla, struct nlmsghdr *n, | |||
942 | 932 | ||
943 | ret = tcf_action_init(net, nla, NULL, NULL, ovr, 0, &actions); | 933 | ret = tcf_action_init(net, nla, NULL, NULL, ovr, 0, &actions); |
944 | if (ret) | 934 | if (ret) |
945 | goto done; | 935 | return ret; |
946 | 936 | ||
947 | /* dump then free all the actions after update; inserted policy | 937 | return tcf_add_notify(net, n, &actions, portid); |
948 | * stays intact | ||
949 | */ | ||
950 | ret = tcf_add_notify(net, n, &actions, portid); | ||
951 | cleanup_a(&actions); | ||
952 | done: | ||
953 | return ret; | ||
954 | } | 938 | } |
955 | 939 | ||
956 | static int tc_ctl_action(struct sk_buff *skb, struct nlmsghdr *n) | 940 | static int tc_ctl_action(struct sk_buff *skb, struct nlmsghdr *n) |