linux/net/sched
Patrick McHardy fbd8f1379a net-sched: sch_htb: move hash and sibling list removal to htb_delete
Hash list removal currently happens twice (once in htb_delete, once
in htb_destroy_class), which makes it harder to use the dynamically
sized class hash without adding special cases for HTB. The reason is
that qdisc destruction destroys classes in hierarchical order, which
is not necessary if filters are destroyed in a separate iteration
during qdisc destruction.

Adjust qdisc destruction to follow the same scheme as other hierarchical
qdiscs by first performing a filter destruction pass, then destroying
all classes in hash order.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-07-05 23:22:19 -07:00
..
act_api.c [NET] NETNS: Omit sock->sk_net without CONFIG_NET_NS. 2008-03-26 04:39:55 +09:00
act_gact.c [NET_SCHED]: Use nla_policy for attribute validation in actions 2008-01-28 15:11:23 -08:00
act_ipt.c [NET_SCHED]: Use nla_policy for attribute validation in actions 2008-01-28 15:11:23 -08:00
act_mirred.c [NET_SCHED]: Use nla_policy for attribute validation in actions 2008-01-28 15:11:23 -08:00
act_nat.c [NET_SCHED]: Use nla_policy for attribute validation in actions 2008-01-28 15:11:23 -08:00
act_pedit.c [NET_SCHED]: Use nla_policy for attribute validation in actions 2008-01-28 15:11:23 -08:00
act_police.c [NET_SCHED]: Use nla_policy for attribute validation in actions 2008-01-28 15:11:23 -08:00
act_simple.c net_cls_act: act_simple dont ignore realloc code 2008-05-06 00:10:24 -07:00
cls_api.c net_sched: cls_api: fix return value for non-existant classifiers 2008-05-20 14:34:46 -07:00
cls_basic.c [NET_SCHED]: Constify struct tcf_ext_map 2008-01-31 19:28:34 -08:00
cls_flow.c [NET_SCHED]: cls_flow: support classification based on VLAN tag 2008-02-05 16:21:04 -08:00
cls_fw.c [NET_SCHED]: Constify struct tcf_ext_map 2008-01-31 19:28:34 -08:00
cls_route.c [NET_SCHED]: Constify struct tcf_ext_map 2008-01-31 19:28:34 -08:00
cls_rsvp.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
cls_rsvp.h [NET_SCHED]: Use nla_policy for attribute validation in classifiers 2008-01-28 15:11:23 -08:00
cls_rsvp6.c [NET_SCHED]: Remove unnecessary includes 2007-07-10 22:16:41 -07:00
cls_tcindex.c [NET_SCHED]: Constify struct tcf_ext_map 2008-01-31 19:28:34 -08:00
cls_u32.c [NET_SCHED] cls_u32: refcounting fix for u32_delete() 2008-04-12 18:37:13 -07:00
em_cmp.c [NET_SCHED]: ematch: module autoloading 2007-07-11 19:46:26 -07:00
em_meta.c [IPV4]: Add 'rtable' field in struct sk_buff to alias 'dst' and avoid casts 2008-03-05 18:30:47 -08:00
em_nbyte.c [NET_SCHED]: ematch: module autoloading 2007-07-11 19:46:26 -07:00
em_text.c [NET_SCHED]: Convert classifiers from rtnetlink to new netlink API 2008-01-28 15:11:11 -08:00
em_u32.c [PKT_SCHED]: annotate cls_u32 2008-03-17 22:46:46 -07:00
ematch.c [PKT_SCHED] ematch: Fix build warning. 2008-02-10 03:48:15 -08:00
Kconfig pkt_sched: Remove CONFIG_NET_SCH_RR 2008-06-27 19:54:05 -07:00
Makefile [NET_SCHED]: Add flow classifier 2008-01-31 19:28:36 -08:00
sch_api.c net-sched: add dynamically sized qdisc class hash helpers 2008-07-05 23:21:31 -07:00
sch_atm.c net-sched: fix filter destruction in atm/hfsc qdisc destruction 2008-07-01 19:53:09 -07:00
sch_blackhole.c [NET]: Move Qdisc_class_ops and Qdisc_ops in appropriate sections. 2008-01-28 14:53:58 -08:00
sch_cbq.c net-sched: sch_cbq: use dynamic class hash helpers 2008-07-05 23:22:05 -07:00
sch_dsmark.c net-sched: change tcf_destroy_chain() to clear start of filter list 2008-07-01 19:52:38 -07:00
sch_fifo.c [NET_SCHED]: Convert packet schedulers from rtnetlink to new netlink API 2008-01-28 15:11:10 -08:00
sch_generic.c pkt_sched: ERR_PTR() ususally encodes an negative errno, not positive. 2008-06-27 19:51:35 -07:00
sch_gred.c netlink: Improve returned error codes 2008-06-03 16:36:54 -07:00
sch_hfsc.c net-sched: sch_hfsc: use dynamic class hash helpers 2008-07-05 23:21:47 -07:00
sch_htb.c net-sched: sch_htb: move hash and sibling list removal to htb_delete 2008-07-05 23:22:19 -07:00
sch_ingress.c net-sched: change tcf_destroy_chain() to clear start of filter list 2008-07-01 19:52:38 -07:00
sch_netem.c [NET_SCHED]: Use nla_policy for attribute validation in packet schedulers 2008-01-28 15:11:22 -08:00
sch_prio.c net-sched: change tcf_destroy_chain() to clear start of filter list 2008-07-01 19:52:38 -07:00
sch_red.c netlink: Improve returned error codes 2008-06-03 16:36:54 -07:00
sch_sfq.c net-sched: change tcf_destroy_chain() to clear start of filter list 2008-07-01 19:52:38 -07:00
sch_tbf.c [NET_SCHED]: Use nla_policy for attribute validation in packet schedulers 2008-01-28 15:11:22 -08:00
sch_teql.c [PKT_SCHED] sch_teql.c: Duplicate IFF_BROADCAST in FMASK, remove 2nd. 2008-01-31 19:28:29 -08:00