diff options
| author | Martin Kaiser <martin@kaiser.cx> | 2022-04-09 18:32:07 +0200 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-04-12 15:49:58 +0200 |
| commit | 8d3ea8302f6264756ae958bceae18f395dc121fc (patch) | |
| tree | 9cb9a90e6045a70a16aa32f55c13a732ed5902ce | |
| parent | 1060ec636d8ba086ad56f558d4618b715c4d67d3 (diff) | |
| download | linux-8d3ea8302f6264756ae958bceae18f395dc121fc.tar.bz2 | |
staging: r8188eu: improve timeout handling in rtw_check_join_candidate
Use the standard kernel functions to define and check the timeout in
rtw_check_join_candidate.
Signed-off-by: Martin Kaiser <martin@kaiser.cx>
Link: https://lore.kernel.org/r/20220409163212.241122-6-martin@kaiser.cx
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| -rw-r--r-- | drivers/staging/r8188eu/core/rtw_mlme.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/staging/r8188eu/core/rtw_mlme.c b/drivers/staging/r8188eu/core/rtw_mlme.c index c90f36dee1ea..aa39f07847c2 100644 --- a/drivers/staging/r8188eu/core/rtw_mlme.c +++ b/drivers/staging/r8188eu/core/rtw_mlme.c @@ -1419,6 +1419,7 @@ static int rtw_check_join_candidate(struct mlme_priv *pmlmepriv { int updated = false; struct adapter *adapter = container_of(pmlmepriv, struct adapter, mlmepriv); + unsigned long scan_res_expire; /* check bssid, if needed */ if (pmlmepriv->assoc_by_bssid) { @@ -1436,8 +1437,9 @@ static int rtw_check_join_candidate(struct mlme_priv *pmlmepriv if (!rtw_is_desired_network(adapter, competitor)) goto exit; + scan_res_expire = competitor->last_scanned + msecs_to_jiffies(RTW_SCAN_RESULT_EXPIRE); if (rtw_to_roaming(adapter) > 0) { - if (rtw_get_passing_time_ms((u32)competitor->last_scanned) >= RTW_SCAN_RESULT_EXPIRE || + if (time_after(jiffies, scan_res_expire) || !is_same_ess(&competitor->network, &pmlmepriv->cur_network.network)) goto exit; } |