From: Matthew Wilcox <mawil...@microsoft.com>

Simply changing idr_remove's 'id' argument to 'unsigned long' suffices
for all callers.

Signed-off-by: Matthew Wilcox <mawil...@microsoft.com>
---
 include/linux/idr.h    | 7 +------
 net/sched/act_api.c    | 2 +-
 net/sched/cls_basic.c  | 6 +++---
 net/sched/cls_bpf.c    | 4 ++--
 net/sched/cls_flower.c | 4 ++--
 net/sched/cls_u32.c    | 8 ++++----
 6 files changed, 13 insertions(+), 18 deletions(-)

diff --git a/include/linux/idr.h b/include/linux/idr.h
index dd048cf456b7..9a4042489ec6 100644
--- a/include/linux/idr.h
+++ b/include/linux/idr.h
@@ -140,16 +140,11 @@ void *idr_replace(struct idr *, void *, int id);
 void *idr_replace_ext(struct idr *idr, void *ptr, unsigned long id);
 void idr_destroy(struct idr *);
 
-static inline void *idr_remove_ext(struct idr *idr, unsigned long id)
+static inline void *idr_remove(struct idr *idr, unsigned long id)
 {
        return radix_tree_delete_item(&idr->idr_rt, id, NULL);
 }
 
-static inline void *idr_remove(struct idr *idr, int id)
-{
-       return idr_remove_ext(idr, id);
-}
-
 static inline void idr_init(struct idr *idr)
 {
        INIT_RADIX_TREE(&idr->idr_rt, IDR_RT_MARKER);
diff --git a/net/sched/act_api.c b/net/sched/act_api.c
index 4d33a50a8a6d..bab81574a420 100644
--- a/net/sched/act_api.c
+++ b/net/sched/act_api.c
@@ -78,7 +78,7 @@ static void free_tcf(struct tc_action *p)
 static void tcf_idr_remove(struct tcf_idrinfo *idrinfo, struct tc_action *p)
 {
        spin_lock_bh(&idrinfo->lock);
-       idr_remove_ext(&idrinfo->action_idr, p->tcfa_index);
+       idr_remove(&idrinfo->action_idr, p->tcfa_index);
        spin_unlock_bh(&idrinfo->lock);
        gen_kill_estimator(&p->tcfa_rate_est);
        free_tcf(p);
diff --git a/net/sched/cls_basic.c b/net/sched/cls_basic.c
index 5f169ded347e..d2193304bad0 100644
--- a/net/sched/cls_basic.c
+++ b/net/sched/cls_basic.c
@@ -120,7 +120,7 @@ static void basic_destroy(struct tcf_proto *tp)
        list_for_each_entry_safe(f, n, &head->flist, link) {
                list_del_rcu(&f->link);
                tcf_unbind_filter(tp, &f->res);
-               idr_remove_ext(&head->handle_idr, f->handle);
+               idr_remove(&head->handle_idr, f->handle);
                if (tcf_exts_get_net(&f->exts))
                        call_rcu(&f->rcu, basic_delete_filter);
                else
@@ -137,7 +137,7 @@ static int basic_delete(struct tcf_proto *tp, void *arg, 
bool *last)
 
        list_del_rcu(&f->link);
        tcf_unbind_filter(tp, &f->res);
-       idr_remove_ext(&head->handle_idr, f->handle);
+       idr_remove(&head->handle_idr, f->handle);
        tcf_exts_get_net(&f->exts);
        call_rcu(&f->rcu, basic_delete_filter);
        *last = list_empty(&head->flist);
@@ -224,7 +224,7 @@ static int basic_change(struct net *net, struct sk_buff 
*in_skb,
        err = basic_set_parms(net, tp, fnew, base, tb, tca[TCA_RATE], ovr);
        if (err < 0) {
                if (!fold)
-                       idr_remove_ext(&head->handle_idr, fnew->handle);
+                       idr_remove(&head->handle_idr, fnew->handle);
                goto errout;
        }
 
diff --git a/net/sched/cls_bpf.c b/net/sched/cls_bpf.c
index 6fe798c2df1a..b017d99fd7e1 100644
--- a/net/sched/cls_bpf.c
+++ b/net/sched/cls_bpf.c
@@ -299,7 +299,7 @@ static void __cls_bpf_delete(struct tcf_proto *tp, struct 
cls_bpf_prog *prog)
 {
        struct cls_bpf_head *head = rtnl_dereference(tp->root);
 
-       idr_remove_ext(&head->handle_idr, prog->handle);
+       idr_remove(&head->handle_idr, prog->handle);
        cls_bpf_stop_offload(tp, prog);
        list_del_rcu(&prog->link);
        tcf_unbind_filter(tp, &prog->res);
@@ -542,7 +542,7 @@ static int cls_bpf_change(struct net *net, struct sk_buff 
*in_skb,
        cls_bpf_free_parms(prog);
 errout_idr:
        if (!oldprog)
-               idr_remove_ext(&head->handle_idr, prog->handle);
+               idr_remove(&head->handle_idr, prog->handle);
 errout:
        tcf_exts_destroy(&prog->exts);
        kfree(prog);
diff --git a/net/sched/cls_flower.c b/net/sched/cls_flower.c
index 543a3e875d05..3e89b0be1706 100644
--- a/net/sched/cls_flower.c
+++ b/net/sched/cls_flower.c
@@ -283,7 +283,7 @@ static void __fl_delete(struct tcf_proto *tp, struct 
cls_fl_filter *f)
 {
        struct cls_fl_head *head = rtnl_dereference(tp->root);
 
-       idr_remove_ext(&head->handle_idr, f->handle);
+       idr_remove(&head->handle_idr, f->handle);
        list_del_rcu(&f->list);
        if (!tc_skip_hw(f->flags))
                fl_hw_destroy_filter(tp, f);
@@ -972,7 +972,7 @@ static int fl_change(struct net *net, struct sk_buff 
*in_skb,
 
 errout_idr:
        if (fnew->handle)
-               idr_remove_ext(&head->handle_idr, fnew->handle);
+               idr_remove(&head->handle_idr, fnew->handle);
 errout:
        tcf_exts_destroy(&fnew->exts);
        kfree(fnew);
diff --git a/net/sched/cls_u32.c b/net/sched/cls_u32.c
index ac152b4f4247..6fe4e3549ad3 100644
--- a/net/sched/cls_u32.c
+++ b/net/sched/cls_u32.c
@@ -591,7 +591,7 @@ static void u32_clear_hnode(struct tcf_proto *tp, struct 
tc_u_hnode *ht)
                                         rtnl_dereference(n->next));
                        tcf_unbind_filter(tp, &n->res);
                        u32_remove_hw_knode(tp, n->handle);
-                       idr_remove_ext(&ht->handle_idr, n->handle);
+                       idr_remove(&ht->handle_idr, n->handle);
                        if (tcf_exts_get_net(&n->exts))
                                call_rcu(&n->rcu, u32_delete_key_freepf_rcu);
                        else
@@ -617,7 +617,7 @@ static int u32_destroy_hnode(struct tcf_proto *tp, struct 
tc_u_hnode *ht)
                if (phn == ht) {
                        u32_clear_hw_hnode(tp, ht);
                        idr_destroy(&ht->handle_idr);
-                       idr_remove_ext(&tp_c->handle_idr, ht->handle);
+                       idr_remove(&tp_c->handle_idr, ht->handle);
                        RCU_INIT_POINTER(*hn, ht->next);
                        kfree_rcu(ht, rcu);
                        return 0;
@@ -992,7 +992,7 @@ static int u32_change(struct net *net, struct sk_buff 
*in_skb,
 
                err = u32_replace_hw_hnode(tp, ht, flags);
                if (err) {
-                       idr_remove_ext(&tp_c->handle_idr, handle);
+                       idr_remove(&tp_c->handle_idr, handle);
                        kfree(ht);
                        return err;
                }
@@ -1120,7 +1120,7 @@ static int u32_change(struct net *net, struct sk_buff 
*in_skb,
 #endif
        kfree(n);
 erridr:
-       idr_remove_ext(&ht->handle_idr, handle);
+       idr_remove(&ht->handle_idr, handle);
        return err;
 }
 
-- 
2.15.0

Reply via email to