Browse Source

qcacld-3.0: Send WLAN_CLIENT_DISONNNECT event from del_station

When receive STOP_BSS, send WLAN_CLIENT_DISONNNECT event send to IPA.
And upon receiving WLAN_CLIENT_DISONNNECT, check if all clients are
already disconnected to avoid redundant event processing.

Change-Id: Ibb3074cdaf65da9ea8c2032df86f9d66b2fce014
CRs-Fixed: 2096338
Yun Park 7 năm trước cách đây
mục cha
commit
73ea8bbb2c
1 tập tin đã thay đổi với 6 bổ sung0 xóa
  1. 6 0
      core/hdd/src/wlan_hdd_ipa.c

+ 6 - 0
core/hdd/src/wlan_hdd_ipa.c

@@ -5365,6 +5365,12 @@ static int __hdd_ipa_wlan_evt(struct hdd_adapter *adapter, uint8_t sta_id,
 		}
 
 		qdf_mutex_acquire(&hdd_ipa->event_lock);
+		if (!hdd_ipa->sap_num_connected_sta) {
+			qdf_mutex_release(&hdd_ipa->event_lock);
+			hdd_err("%s: Evt: %d, Client already disconnected",
+				msg_ex->name, meta.msg_type);
+			return 0;
+		}
 		if (!hdd_ipa_uc_find_add_assoc_sta(hdd_ipa, false, sta_id)) {
 			qdf_mutex_release(&hdd_ipa->event_lock);
 			HDD_IPA_LOG(QDF_TRACE_LEVEL_ERROR,