]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
net: sched: use tcf_block_q helper to get q pointer for sch_tree_lock
authorJiri Pirko <jiri@mellanox.com>
Fri, 13 Oct 2017 12:01:04 +0000 (14:01 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 16 Oct 2017 20:00:41 +0000 (21:00 +0100)
Use tcf_block_q helper to get q pointer to be used for direct call of
sch_tree_lock/unlock instead of tcf_tree_lock/unlock.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/sch_generic.h
net/sched/sch_api.c

index 9b2cb91dc0d9ee51ffdd31f37c70f6d9b6115d37..0aea9e23e97a4517b0ebe25484b92aed7533542a 100644 (file)
@@ -359,9 +359,6 @@ static inline void sch_tree_unlock(const struct Qdisc *q)
        spin_unlock_bh(qdisc_root_sleeping_lock(q));
 }
 
-#define tcf_tree_lock(tp)      sch_tree_lock((tp)->q)
-#define tcf_tree_unlock(tp)    sch_tree_unlock((tp)->q)
-
 extern struct Qdisc noop_qdisc;
 extern struct Qdisc_ops noop_qdisc_ops;
 extern struct Qdisc_ops pfifo_fast_ops;
index aa82116ed10c560e35dc7af8618ef16762428181..a9ac912f1d67df1634fb6e08fde4231fea549938 100644 (file)
@@ -1661,9 +1661,11 @@ static int tcf_node_bind(struct tcf_proto *tp, void *n, struct tcf_walker *arg)
        struct tcf_bind_args *a = (void *)arg;
 
        if (tp->ops->bind_class) {
-               tcf_tree_lock(tp);
+               struct Qdisc *q = tcf_block_q(tp->chain->block);
+
+               sch_tree_lock(q);
                tp->ops->bind_class(n, a->classid, a->cl);
-               tcf_tree_unlock(tp);
+               sch_tree_unlock(q);
        }
        return 0;
 }