Browse Source

qcacld-3.0: Stop bus_bw timer for eSAP_STOP_BSS_EVENT

Driver unload called as part of "rmmod" which reports bug_on
in hdd_bus_bandwidth_deinit as bus_bw timer still running.
Bus_bw timer is not stopped when rmmod is issued if SAP is
enabled and any STA is connected to SAP.

Stop the bus_bw timer during unload for eSAP_STOP_BSS_EVENT

Change-Id: I0ed8309f25b85ebf8ca1e115cbd7aa1c931571ff
CRs-Fixed: 2323641
Alok Kumar 6 years ago
parent
commit
5011ee6eb3
1 changed files with 4 additions and 1 deletions
  1. 4 1
      core/hdd/src/wlan_hdd_hostapd.c

+ 4 - 1
core/hdd/src/wlan_hdd_hostapd.c

@@ -1866,6 +1866,7 @@ QDF_STATUS hdd_hostapd_sap_event_cb(tpSap_Event pSapEvent,
 		 * in another place
 		 */
 		ap_ctx->bss_stop_reason = BSS_STOP_REASON_INVALID;
+		ap_ctx->ap_active = false;
 		goto stopbss;
 
 	case eSAP_DFS_CAC_START:
@@ -2556,8 +2557,10 @@ stopbss:
 		 * not be touched since they are now subject to being deleted
 		 * by another thread
 		 */
-		if (eSAP_STOP_BSS_EVENT == sapEvent)
+		if (eSAP_STOP_BSS_EVENT == sapEvent) {
 			qdf_event_set(&hostapd_state->qdf_stop_bss_event);
+			hdd_bus_bw_compute_timer_try_stop(hdd_ctx);
+		}
 
 		hdd_ipa_set_tx_flow_info();
 	}