mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2025-12-20 03:30:09 +01:00
l3cfg: fix the interval of the ACD restart timer
After ACD_WAIT_PROBING_EXTRA_TIME_MSEC has elapsed, _l3_acd_data_timeout_schedule_probing_restart() keeps rescheduling the timer with a zero interval, resulting in 100% CPU usage. This continues until the probe is destroyed after ACD_WAIT_PROBING_EXTRA_TIME2_MSEC. When computing the interval, we need to use (ACD_WAIT_PROBING_EXTRA_TIME_MSEC + ACD_WAIT_PROBING_EXTRA_TIME2_MSEC) as the expiry time.
This commit is contained in:
parent
407d753a5a
commit
127f73a5c2
1 changed files with 2 additions and 1 deletions
|
|
@ -2322,7 +2322,8 @@ _l3_acd_data_timeout_schedule_probing_restart(AcdData *acd_data, gint64 now_msec
|
|||
nm_assert(acd_data->probing_timeout_msec > 0);
|
||||
nm_assert(acd_data->probing_timestamp_msec > 0);
|
||||
|
||||
expiry_msec = acd_data->probing_timestamp_msec + ACD_WAIT_PROBING_EXTRA_TIME_MSEC;
|
||||
expiry_msec = acd_data->probing_timestamp_msec + ACD_WAIT_PROBING_EXTRA_TIME_MSEC
|
||||
+ ACD_WAIT_PROBING_EXTRA_TIME2_MSEC;
|
||||
|
||||
timeout_msec = NM_MAX(0, expiry_msec - now_msec);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue