diff options
author | Thomas Graf <tgraf@suug.ch> | 2005-11-05 15:14:26 -0500 |
---|---|---|
committer | Thomas Graf <tgr@axs.localdomain> | 2005-11-05 16:02:28 -0500 |
commit | d8f64e19605d6ce40bc560e7bc919e2e02a79c1b (patch) | |
tree | 3e0008122a6b775afba871ed6f5c429e20ec43d7 | |
parent | 1e4dfaf9b99a8b652e8421936fd5fe2459da8265 (diff) |
[PKT_SCHED]: GRED: Fix restart of idle period in WRED mode upon dequeue and drop
Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: Arnaldo Carvalho de Melo <acme@mandriva.com>
-rw-r--r-- | net/sched/sch_gred.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/sched/sch_gred.c b/net/sched/sch_gred.c index 1fb34be32f7c..69f0fd45d4c3 100644 --- a/net/sched/sch_gred.c +++ b/net/sched/sch_gred.c | |||
@@ -267,7 +267,7 @@ static struct sk_buff *gred_dequeue(struct Qdisc* sch) | |||
267 | return skb; | 267 | return skb; |
268 | } | 268 | } |
269 | 269 | ||
270 | if (gred_wred_mode(t)) | 270 | if (gred_wred_mode(t) && !red_is_idling(&t->wred_set)) |
271 | red_start_of_idle_period(&t->wred_set); | 271 | red_start_of_idle_period(&t->wred_set); |
272 | 272 | ||
273 | return NULL; | 273 | return NULL; |
@@ -301,7 +301,7 @@ static unsigned int gred_drop(struct Qdisc* sch) | |||
301 | return len; | 301 | return len; |
302 | } | 302 | } |
303 | 303 | ||
304 | if (gred_wred_mode(t)) | 304 | if (gred_wred_mode(t) && !red_is_idling(&t->wred_set)) |
305 | red_start_of_idle_period(&t->wred_set); | 305 | red_start_of_idle_period(&t->wred_set); |
306 | 306 | ||
307 | return 0; | 307 | return 0; |