net: sched: convert qdisc linked list to hashtable
authorJiri Kosina <jkosina@suse.cz>
Wed, 10 Aug 2016 09:05:15 +0000 (11:05 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 11 Aug 2016 00:19:02 +0000 (17:19 -0700)
commit59cc1f61f09c26ce82c308e24b76141e1efe99f8
treef643eab05a5617402f6f995b0304d3fbfa48570e
parente87a8f24c9151d449ab46d82a504c1ebfea210f2
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>
include/linux/netdevice.h
include/net/pkt_sched.h
include/net/sch_generic.h
net/core/dev.c
net/sched/sch_api.c
net/sched/sch_generic.c
net/sched/sch_mq.c
net/sched/sch_mqprio.c