wlan: No longer call csrNeighborRoamHandleEmptyScanResult().
Modify csrNeighborRoamScanRequestCallback() to no longer call
csrNeighborRoamHandleEmptyScanResult() - when no roam candidates are
found during a BG scan. Instead schedule BG scans based only upon
gNeighborRoamScanRefreshPeriod. This should help prevent excessive
scanning from interfering with heartbeat monitoring.
Change-Id: Icdf0042547a1652c9635056c2b4aa017fe1372b0
CR-Fixed: 407719
diff --git a/CORE/SME/src/csr/csrNeighborRoam.c b/CORE/SME/src/csr/csrNeighborRoam.c
index e089c48..8354210 100644
--- a/CORE/SME/src/csr/csrNeighborRoam.c
+++ b/CORE/SME/src/csr/csrNeighborRoam.c
@@ -1322,11 +1322,21 @@
}
else
{
- NEIGHBOR_ROAM_DEBUG(pMac, LOGE, FL("No candidate found after scanning in state %d.. "), pNeighborRoamInfo->neighborRoamState);
- /* Handle it appropriately */
- csrNeighborRoamHandleEmptyScanResult(pMac);
+ /* Restart the timer even in the event that we didn't obtain any candidates. */
+ /* (We used to reset the lookup threshold, in this event. No longer.) */
+ hstatus = palTimerStart(pMac->hHdd, pNeighborRoamInfo->neighborScanTimer,
+ pNeighborRoamInfo->cfgParams.neighborScanPeriod * PAL_TIMER_TO_MS_UNIT,
+ eANI_BOOLEAN_FALSE);
+
+ if (eHAL_STATUS_SUCCESS != hstatus)
+ {
+ /* Timer start failed.. Should we ASSERT here??? */
+ smsLog(pMac, LOGE, FL("Neighbor scan PAL Timer start failed, status = %d, Ignoring state transition"), status);
+ return eHAL_STATUS_FAILURE;
+ }
}
break;
+
#ifdef WLAN_FEATURE_VOWIFI_11R
case eCSR_NEIGHBOR_ROAM_STATE_REPORT_SCAN:
if (!tempVal)