|
@@ -1437,7 +1437,8 @@ void rtl_watchdog_wq_callback(void *data)
|
|
/* if we can't recv beacon for 6s, we should
|
|
/* if we can't recv beacon for 6s, we should
|
|
* reconnect this AP
|
|
* reconnect this AP
|
|
*/
|
|
*/
|
|
- if (rtlpriv->link_info.roam_times >= 3) {
|
|
|
|
|
|
+ if ((rtlpriv->link_info.roam_times >= 3) &&
|
|
|
|
+ !is_zero_ether_addr(rtlpriv->mac80211.bssid)) {
|
|
RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG,
|
|
RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG,
|
|
"AP off, try to reconnect now\n");
|
|
"AP off, try to reconnect now\n");
|
|
rtlpriv->link_info.roam_times = 0;
|
|
rtlpriv->link_info.roam_times = 0;
|