|
@@ -976,8 +976,9 @@ static struct sk_buff *htb_dequeue(struct Qdisc *sch)
|
|
|
|
|
|
if (q->now >= q->near_ev_cache[level]) {
|
|
if (q->now >= q->near_ev_cache[level]) {
|
|
event = htb_do_events(q, level);
|
|
event = htb_do_events(q, level);
|
|
- q->near_ev_cache[level] = event ? event :
|
|
|
|
- PSCHED_TICKS_PER_SEC;
|
|
|
|
|
|
+ if (!event)
|
|
|
|
+ event = q->now + PSCHED_TICKS_PER_SEC;
|
|
|
|
+ q->near_ev_cache[level] = event;
|
|
} else
|
|
} else
|
|
event = q->near_ev_cache[level];
|
|
event = q->near_ev_cache[level];
|
|
|
|
|