diff options
author | Jiri Pirko <jiri@mellanox.com> | 2017-05-17 11:07:55 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-05-17 21:22:13 +0200 |
commit | 6529eaba33f0465fc6d228e1d05b1745f7d0e8c9 (patch) | |
tree | d0caf42e125d3554262bd7c2fb66f232a5a7c90a /net/sched/sch_api.c | |
parent | net: sched: move tc_classify function to cls_api.c (diff) | |
download | linux-6529eaba33f0465fc6d228e1d05b1745f7d0e8c9.tar.xz linux-6529eaba33f0465fc6d228e1d05b1745f7d0e8c9.zip |
net: sched: introduce tcf block infractructure
Currently, the filter chains are direcly put into the private structures
of qdiscs. In order to be able to have multiple chains per qdisc and to
allow filter chains sharing among qdiscs, there is a need for common
object that would hold the chains. This introduces such object and calls
it "tcf_block".
Helpers to get and put the blocks are provided to be called from
individual qdisc code. Also, the original filter_list pointers are left
in qdisc privs to allow the entry into tcf_block processing without any
added overhead of possible multiple pointer dereference on fast path.
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/sch_api.c')
-rw-r--r-- | net/sched/sch_api.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/sched/sch_api.c b/net/sched/sch_api.c index a3bcd972d940..5d95401bbc02 100644 --- a/net/sched/sch_api.c +++ b/net/sched/sch_api.c @@ -163,7 +163,7 @@ int register_qdisc(struct Qdisc_ops *qops) if (!(cops->get && cops->put && cops->walk && cops->leaf)) goto out_einval; - if (cops->tcf_chain && !(cops->bind_tcf && cops->unbind_tcf)) + if (cops->tcf_block && !(cops->bind_tcf && cops->unbind_tcf)) goto out_einval; } |