diff options
author | Thomas Graf <tgraf@suug.ch> | 2005-11-05 21:14:22 +0100 |
---|---|---|
committer | Thomas Graf <tgr@axs.localdomain> | 2005-11-05 22:02:28 +0100 |
commit | 4a591834cfc79b2ff74457e976420361f8ae28b4 (patch) | |
tree | b4ba89a184d9af8e004399b66deae36a3e87b599 /net/sched/sch_gred.c | |
parent | 18e3fb84e698dcab1c5fa7b7c89921b826bb5620 (diff) |
[PKT_SCHED]: GRED: Remove initd flag
The case when the default VQ is not set up yet is already handled
in a less error prone way.
Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
Diffstat (limited to 'net/sched/sch_gred.c')
-rw-r--r-- | net/sched/sch_gred.c | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/net/sched/sch_gred.c b/net/sched/sch_gred.c index 646dbdc4ef2..29869a07748 100644 --- a/net/sched/sch_gred.c +++ b/net/sched/sch_gred.c @@ -89,7 +89,6 @@ struct gred_sched unsigned long flags; u32 DPs; u32 def; - u8 initd; }; static inline int gred_wred_mode(struct gred_sched *table) @@ -166,14 +165,7 @@ gred_enqueue(struct sk_buff *skb, struct Qdisc* sch) struct gred_sched *t= qdisc_priv(sch); unsigned long qavg = 0; int i=0; - u16 dp; - - if (!t->initd && skb_queue_len(&sch->q) < (sch->dev->tx_queue_len ? : 1)) { - D2PRINTK("NO GRED Queues setup yet! Enqueued anyway\n"); - goto do_enqueue; - } - - dp = tc_index_to_dp(skb); + u16 dp = tc_index_to_dp(skb); if (dp >= t->DPs || (q = t->tab[dp]) == NULL) { dp = t->def; @@ -241,7 +233,6 @@ gred_enqueue(struct sk_buff *skb, struct Qdisc* sch) if (q->backlog + skb->len <= q->limit) { q->backlog += skb->len; -do_enqueue: return qdisc_enqueue_tail(skb, sch); } @@ -420,8 +411,6 @@ static inline int gred_change_table_def(struct Qdisc *sch, struct rtattr *dps) } } - table->initd = 0; - return 0; } @@ -509,8 +498,6 @@ static int gred_change(struct Qdisc *sch, struct rtattr *opt) goto errout_locked; } - table->initd = 1; - if (gred_rio_mode(table)) { gred_disable_wred_mode(table); if (gred_wred_mode_check(sch)) |