mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
[NET_SCHED]: sch_htb: fix event cache time calculation
The event cache time must be an absolute value, when no event exists it is incorrectly set to 1s instead of 1s in the future. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
1b07a95a5b
commit
2e4b3b0e87
@ -976,8 +976,9 @@ static struct sk_buff *htb_dequeue(struct Qdisc *sch)
|
||||
|
||||
if (q->now >= q->near_ev_cache[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
|
||||
event = q->near_ev_cache[level];
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user