From bfe6f6f23521fddd8d13a33683da3060ff914cdb Mon Sep 17 00:00:00 2001 From: "Poddar, Siddarth" Date: Thu, 16 Mar 2017 19:20:09 +0530 Subject: qcacld-3.0: Drop the pkt if deauth is in progress When SAP initiates deauth/diassoc for peer device, it sets isDeauthInProgress flag. So, if host receives tx packets for peer from network layer or ipa path while peer remove is in progress, then drop the tx packets at hdd level in __hdd_softap_hard_start_xmit based on above flag check. CRs-Fixed: 2016092 Change-Id: I52c3bcd92478eb657bdd90d15eb13d1cd95ee090 --- core/hdd/src/wlan_hdd_softap_tx_rx.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/core/hdd/src/wlan_hdd_softap_tx_rx.c b/core/hdd/src/wlan_hdd_softap_tx_rx.c index 601617afe310..09761ab4b487 100644 --- a/core/hdd/src/wlan_hdd_softap_tx_rx.c +++ b/core/hdd/src/wlan_hdd_softap_tx_rx.c @@ -319,6 +319,13 @@ static int __hdd_softap_hard_start_xmit(struct sk_buff *skb, "%s: STA %d is unregistered", __func__, STAId); goto drop_pkt; + } else if (true == pAdapter->aStaInfo[STAId]. + isDeauthInProgress) { + QDF_TRACE(QDF_MODULE_ID_HDD_SAP_DATA, + QDF_TRACE_LEVEL_WARN, + "%s: STA %d deauth in progress", __func__, + STAId); + goto drop_pkt; } if ((OL_TXRX_PEER_STATE_CONN != -- cgit v1.2.3