Commit 18d0264f authored by WANG Cong's avatar WANG Cong Committed by David S. Miller

net_sched: remove the first parameter from tcf_exts_destroy()

Cc: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: default avatarCong Wang <xiyou.wangcong@gmail.com>
Acked-by: default avatarJamal Hadi Salim <hadi@mojatatu.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 5804283d
...@@ -137,7 +137,7 @@ tcf_exts_exec(struct sk_buff *skb, struct tcf_exts *exts, ...@@ -137,7 +137,7 @@ tcf_exts_exec(struct sk_buff *skb, struct tcf_exts *exts,
int tcf_exts_validate(struct net *net, struct tcf_proto *tp, int tcf_exts_validate(struct net *net, struct tcf_proto *tp,
struct nlattr **tb, struct nlattr *rate_tlv, struct nlattr **tb, struct nlattr *rate_tlv,
struct tcf_exts *exts, bool ovr); struct tcf_exts *exts, bool ovr);
void tcf_exts_destroy(struct tcf_proto *tp, struct tcf_exts *exts); void tcf_exts_destroy(struct tcf_exts *exts);
void tcf_exts_change(struct tcf_proto *tp, struct tcf_exts *dst, void tcf_exts_change(struct tcf_proto *tp, struct tcf_exts *dst,
struct tcf_exts *src); struct tcf_exts *src);
int tcf_exts_dump(struct sk_buff *skb, struct tcf_exts *exts); int tcf_exts_dump(struct sk_buff *skb, struct tcf_exts *exts);
......
...@@ -496,7 +496,7 @@ static int tc_dump_tfilter(struct sk_buff *skb, struct netlink_callback *cb) ...@@ -496,7 +496,7 @@ static int tc_dump_tfilter(struct sk_buff *skb, struct netlink_callback *cb)
return skb->len; return skb->len;
} }
void tcf_exts_destroy(struct tcf_proto *tp, struct tcf_exts *exts) void tcf_exts_destroy(struct tcf_exts *exts)
{ {
#ifdef CONFIG_NET_CLS_ACT #ifdef CONFIG_NET_CLS_ACT
tcf_action_destroy(&exts->actions, TCA_ACT_UNBIND); tcf_action_destroy(&exts->actions, TCA_ACT_UNBIND);
......
...@@ -94,7 +94,7 @@ static void basic_delete_filter(struct rcu_head *head) ...@@ -94,7 +94,7 @@ static void basic_delete_filter(struct rcu_head *head)
struct tcf_proto *tp = f->tp; struct tcf_proto *tp = f->tp;
tcf_unbind_filter(tp, &f->res); tcf_unbind_filter(tp, &f->res);
tcf_exts_destroy(tp, &f->exts); tcf_exts_destroy(&f->exts);
tcf_em_tree_destroy(tp, &f->ematches); tcf_em_tree_destroy(tp, &f->ematches);
kfree(f); kfree(f);
} }
...@@ -161,7 +161,7 @@ static int basic_set_parms(struct net *net, struct tcf_proto *tp, ...@@ -161,7 +161,7 @@ static int basic_set_parms(struct net *net, struct tcf_proto *tp,
return 0; return 0;
errout: errout:
tcf_exts_destroy(tp, &e); tcf_exts_destroy(&e);
return err; return err;
} }
......
...@@ -93,7 +93,7 @@ static int cls_bpf_init(struct tcf_proto *tp) ...@@ -93,7 +93,7 @@ static int cls_bpf_init(struct tcf_proto *tp)
static void cls_bpf_delete_prog(struct tcf_proto *tp, struct cls_bpf_prog *prog) static void cls_bpf_delete_prog(struct tcf_proto *tp, struct cls_bpf_prog *prog)
{ {
tcf_unbind_filter(tp, &prog->res); tcf_unbind_filter(tp, &prog->res);
tcf_exts_destroy(tp, &prog->exts); tcf_exts_destroy(&prog->exts);
bpf_prog_destroy(prog->filter); bpf_prog_destroy(prog->filter);
...@@ -217,7 +217,7 @@ static int cls_bpf_modify_existing(struct net *net, struct tcf_proto *tp, ...@@ -217,7 +217,7 @@ static int cls_bpf_modify_existing(struct net *net, struct tcf_proto *tp,
errout_free: errout_free:
kfree(bpf_ops); kfree(bpf_ops);
errout: errout:
tcf_exts_destroy(tp, &exts); tcf_exts_destroy(&exts);
return ret; return ret;
} }
......
...@@ -86,7 +86,7 @@ static void cls_cgroup_destroy_rcu(struct rcu_head *root) ...@@ -86,7 +86,7 @@ static void cls_cgroup_destroy_rcu(struct rcu_head *root)
struct cls_cgroup_head, struct cls_cgroup_head,
rcu); rcu);
tcf_exts_destroy(head->tp, &head->exts); tcf_exts_destroy(&head->exts);
tcf_em_tree_destroy(head->tp, &head->ematches); tcf_em_tree_destroy(head->tp, &head->ematches);
kfree(head); kfree(head);
} }
...@@ -135,7 +135,7 @@ static int cls_cgroup_change(struct net *net, struct sk_buff *in_skb, ...@@ -135,7 +135,7 @@ static int cls_cgroup_change(struct net *net, struct sk_buff *in_skb,
err = tcf_em_tree_validate(tp, tb[TCA_CGROUP_EMATCHES], &t); err = tcf_em_tree_validate(tp, tb[TCA_CGROUP_EMATCHES], &t);
if (err < 0) { if (err < 0) {
tcf_exts_destroy(tp, &e); tcf_exts_destroy(&e);
goto errout; goto errout;
} }
...@@ -156,7 +156,7 @@ static void cls_cgroup_destroy(struct tcf_proto *tp) ...@@ -156,7 +156,7 @@ static void cls_cgroup_destroy(struct tcf_proto *tp)
struct cls_cgroup_head *head = rtnl_dereference(tp->root); struct cls_cgroup_head *head = rtnl_dereference(tp->root);
if (head) { if (head) {
tcf_exts_destroy(tp, &head->exts); tcf_exts_destroy(&head->exts);
tcf_em_tree_destroy(tp, &head->ematches); tcf_em_tree_destroy(tp, &head->ematches);
RCU_INIT_POINTER(tp->root, NULL); RCU_INIT_POINTER(tp->root, NULL);
kfree_rcu(head, rcu); kfree_rcu(head, rcu);
......
...@@ -354,7 +354,7 @@ static void flow_destroy_filter(struct rcu_head *head) ...@@ -354,7 +354,7 @@ static void flow_destroy_filter(struct rcu_head *head)
struct flow_filter *f = container_of(head, struct flow_filter, rcu); struct flow_filter *f = container_of(head, struct flow_filter, rcu);
del_timer_sync(&f->perturb_timer); del_timer_sync(&f->perturb_timer);
tcf_exts_destroy(f->tp, &f->exts); tcf_exts_destroy(&f->exts);
tcf_em_tree_destroy(f->tp, &f->ematches); tcf_em_tree_destroy(f->tp, &f->ematches);
kfree(f); kfree(f);
} }
...@@ -533,7 +533,7 @@ static int flow_change(struct net *net, struct sk_buff *in_skb, ...@@ -533,7 +533,7 @@ static int flow_change(struct net *net, struct sk_buff *in_skb,
tcf_em_tree_destroy(tp, &t); tcf_em_tree_destroy(tp, &t);
kfree(fnew); kfree(fnew);
err1: err1:
tcf_exts_destroy(tp, &e); tcf_exts_destroy(&e);
return err; return err;
} }
......
...@@ -126,7 +126,7 @@ static void fw_delete_filter(struct rcu_head *head) ...@@ -126,7 +126,7 @@ static void fw_delete_filter(struct rcu_head *head)
struct tcf_proto *tp = f->tp; struct tcf_proto *tp = f->tp;
tcf_unbind_filter(tp, &f->res); tcf_unbind_filter(tp, &f->res);
tcf_exts_destroy(tp, &f->exts); tcf_exts_destroy(&f->exts);
kfree(f); kfree(f);
} }
...@@ -223,7 +223,7 @@ fw_change_attrs(struct net *net, struct tcf_proto *tp, struct fw_filter *f, ...@@ -223,7 +223,7 @@ fw_change_attrs(struct net *net, struct tcf_proto *tp, struct fw_filter *f,
return 0; return 0;
errout: errout:
tcf_exts_destroy(tp, &e); tcf_exts_destroy(&e);
return err; return err;
} }
......
...@@ -272,7 +272,7 @@ route4_delete_filter(struct rcu_head *head) ...@@ -272,7 +272,7 @@ route4_delete_filter(struct rcu_head *head)
struct tcf_proto *tp = f->tp; struct tcf_proto *tp = f->tp;
tcf_unbind_filter(tp, &f->res); tcf_unbind_filter(tp, &f->res);
tcf_exts_destroy(tp, &f->exts); tcf_exts_destroy(&f->exts);
kfree(f); kfree(f);
} }
...@@ -456,7 +456,7 @@ static int route4_set_parms(struct net *net, struct tcf_proto *tp, ...@@ -456,7 +456,7 @@ static int route4_set_parms(struct net *net, struct tcf_proto *tp,
return 0; return 0;
errout: errout:
tcf_exts_destroy(tp, &e); tcf_exts_destroy(&e);
return err; return err;
} }
......
...@@ -264,7 +264,7 @@ static void ...@@ -264,7 +264,7 @@ static void
rsvp_delete_filter(struct tcf_proto *tp, struct rsvp_filter *f) rsvp_delete_filter(struct tcf_proto *tp, struct rsvp_filter *f)
{ {
tcf_unbind_filter(tp, &f->res); tcf_unbind_filter(tp, &f->res);
tcf_exts_destroy(tp, &f->exts); tcf_exts_destroy(&f->exts);
kfree_rcu(f, rcu); kfree_rcu(f, rcu);
} }
...@@ -577,7 +577,7 @@ static int rsvp_change(struct net *net, struct sk_buff *in_skb, ...@@ -577,7 +577,7 @@ static int rsvp_change(struct net *net, struct sk_buff *in_skb,
errout: errout:
kfree(f); kfree(f);
errout2: errout2:
tcf_exts_destroy(tp, &e); tcf_exts_destroy(&e);
return err; return err;
} }
......
...@@ -169,7 +169,7 @@ tcindex_delete(struct tcf_proto *tp, unsigned long arg) ...@@ -169,7 +169,7 @@ tcindex_delete(struct tcf_proto *tp, unsigned long arg)
rcu_assign_pointer(*walk, rtnl_dereference(f->next)); rcu_assign_pointer(*walk, rtnl_dereference(f->next));
} }
tcf_unbind_filter(tp, &r->res); tcf_unbind_filter(tp, &r->res);
tcf_exts_destroy(tp, &r->exts); tcf_exts_destroy(&r->exts);
if (f) if (f)
kfree_rcu(f, rcu); kfree_rcu(f, rcu);
return 0; return 0;
...@@ -401,7 +401,7 @@ tcindex_set_parms(struct net *net, struct tcf_proto *tp, unsigned long base, ...@@ -401,7 +401,7 @@ tcindex_set_parms(struct net *net, struct tcf_proto *tp, unsigned long base,
kfree(cp->h); kfree(cp->h);
errout: errout:
kfree(cp); kfree(cp);
tcf_exts_destroy(tp, &e); tcf_exts_destroy(&e);
return err; return err;
} }
......
...@@ -359,7 +359,7 @@ static int u32_destroy_key(struct tcf_proto *tp, ...@@ -359,7 +359,7 @@ static int u32_destroy_key(struct tcf_proto *tp,
bool free_pf) bool free_pf)
{ {
tcf_unbind_filter(tp, &n->res); tcf_unbind_filter(tp, &n->res);
tcf_exts_destroy(tp, &n->exts); tcf_exts_destroy(&n->exts);
if (n->ht_down) if (n->ht_down)
n->ht_down->refcnt--; n->ht_down->refcnt--;
#ifdef CONFIG_CLS_U32_PERF #ifdef CONFIG_CLS_U32_PERF
...@@ -606,7 +606,7 @@ static int u32_set_parms(struct net *net, struct tcf_proto *tp, ...@@ -606,7 +606,7 @@ static int u32_set_parms(struct net *net, struct tcf_proto *tp,
return 0; return 0;
errout: errout:
tcf_exts_destroy(tp, &e); tcf_exts_destroy(&e);
return err; return err;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment