[NET_SCHED]: sch_cbq: fix watchdog scheduled too late
q->now is increased during dequeue and doesn't contain the current time afterwards, resulting in a too large timeout value for the qdisc watchdog. Use "now" instead, which still contains the current time. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
4361cb17f0
Коммит
bb239acf56
|
@ -1070,7 +1070,7 @@ cbq_dequeue(struct Qdisc *sch)
|
|||
sch->qstats.overlimits++;
|
||||
if (q->wd_expires)
|
||||
qdisc_watchdog_schedule(&q->watchdog,
|
||||
q->now + q->wd_expires);
|
||||
now + q->wd_expires);
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче