aboutsummaryrefslogtreecommitdiff
path: root/net/sched/sch_gred.c
diff options
context:
space:
mode:
authorThomas Graf <tgraf@suug.ch>2005-11-05 21:14:22 +0100
committerThomas Graf <tgr@axs.localdomain>2005-11-05 22:02:28 +0100
commit4a591834cfc79b2ff74457e976420361f8ae28b4 (patch)
treeb4ba89a184d9af8e004399b66deae36a3e87b599 /net/sched/sch_gred.c
parent18e3fb84e698dcab1c5fa7b7c89921b826bb5620 (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.c15
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))