qcacld-3.0: Don't indicate P2P client deletion event

DUT formed P2P connection with second device and as P2P GO, trigger
assert in target, supplicant get P2P client deletion event, and then
DUT remove P2P GO and change interface type from P2P GO to P2P device
but failed since recovery in progress. This change avoid to indicate
P2P client deletion event to up layer since host will sent P2P GO
stopping event to up layer.

Change-Id: I2221332d062f1e5f74846187ce9b478a11b8eb9f
CRs-Fixed: 2589866
This commit is contained in:
Wu Gao 2016-06-15 12:41:31 +08:00 committed by nshrivas
parent 9f90d60fa2
commit 6f585aba54

View File

@ -2355,10 +2355,20 @@ QDF_STATUS hdd_hostapd_sap_event_cb(struct sap_event *sap_event,
WIFI_POWER_EVENT_WAKELOCK_SAP);
qdf_wake_lock_timeout_acquire(&hdd_ctx->sap_wake_lock,
HDD_SAP_CLIENT_DISCONNECT_WAKE_LOCK_DURATION);
cfg80211_del_sta(dev,
(const u8 *)&sap_event->sapevt.
sapStationDisassocCompleteEvent.staMac.
bytes[0], GFP_KERNEL);
/*
* Don't indicate delete station event if P2P GO and
* SSR in progress. Since supplicant will change mode
* fail and down during this time.
*/
if ((adapter->device_mode != QDF_P2P_GO_MODE) ||
(!cds_is_driver_recovering())) {
cfg80211_del_sta(dev,
(const u8 *)&sap_event->sapevt.
sapStationDisassocCompleteEvent.staMac.
bytes[0], GFP_KERNEL);
hdd_debug("indicate sta deletion event");
}
/* Update the beacon Interval if it is P2P GO */
qdf_status = policy_mgr_change_mcc_go_beacon_interval(