aboutsummaryrefslogtreecommitdiff
path: root/net/sched/sch_mq.c
diff options
context:
space:
mode:
authorGravatar Jiri Kosina <jkosina@suse.cz> 2016-08-10 11:05:15 +0200
committerGravatar David S. Miller <davem@davemloft.net> 2016-08-10 17:19:02 -0700
commit59cc1f61f09c26ce82c308e24b76141e1efe99f8 (patch)
treef643eab05a5617402f6f995b0304d3fbfa48570e /net/sched/sch_mq.c
parentnet: resolve symbol conflicts with generic hashtable.h (diff)
downloadlinux-59cc1f61f09c26ce82c308e24b76141e1efe99f8.tar.gz
linux-59cc1f61f09c26ce82c308e24b76141e1efe99f8.tar.bz2
linux-59cc1f61f09c26ce82c308e24b76141e1efe99f8.zip
net: sched: convert qdisc linked list to hashtable
Convert the per-device linked list into a hashtable. The primary motivation for this change is that currently, we're not tracking all the qdiscs in hierarchy (e.g. excluding default qdiscs), as the lookup performed over the linked list by qdisc_match_from_root() is rather expensive. The ultimate goal is to get rid of hidden qdiscs completely, which will bring much more determinism in user experience. Reviewed-by: Cong Wang <xiyou.wangcong@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/sch_mq.c')
-rw-r--r--net/sched/sch_mq.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/sched/sch_mq.c b/net/sched/sch_mq.c
index b9439827c172..2bc8d7f8df16 100644
--- a/net/sched/sch_mq.c
+++ b/net/sched/sch_mq.c
@@ -88,7 +88,7 @@ static void mq_attach(struct Qdisc *sch)
qdisc_destroy(old);
#ifdef CONFIG_NET_SCHED
if (ntx < dev->real_num_tx_queues)
- qdisc_list_add(qdisc);
+ qdisc_hash_add(qdisc);
#endif
}