mirror of
https://github.com/haproxy/haproxy.git
synced 2026-06-10 17:32:03 -04:00
[BUG] fix buggy timeout computation in wake_expired_tasks
Wake_expired_tasks is supposed to return a date, not an interval. It was causing busy loops in pollers.
This commit is contained in:
parent
bdefc513a0
commit
fbfc053e34
1 changed files with 2 additions and 2 deletions
|
|
@ -96,7 +96,7 @@ void wake_expired_tasks(struct timeval *next)
|
|||
if (likely(timer_wq.data != NULL)) {
|
||||
task = LIST_ELEM(timer_wq.data, struct task *, qlist);
|
||||
if (likely(tv_isgt(&task->expire, &now))) {
|
||||
tv_remain(&now, &task->expire, next);
|
||||
*next = task->expire;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
@ -108,7 +108,7 @@ void wake_expired_tasks(struct timeval *next)
|
|||
task = LIST_ELEM(data, struct task *, qlist);
|
||||
|
||||
if (tv_isgt(&task->expire, &now)) {
|
||||
tv_remain(&now, &task->expire, next);
|
||||
*next = task->expire;
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue