From a5075466e49ae5d06e3a402693f0886372247c8a Mon Sep 17 00:00:00 2001 From: "Poddar, Siddarth" Date: Thu, 16 Mar 2017 19:20:09 +0530 Subject: [PATCH] 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 e46e2e1dbbf0..c664eb4c05c7 100644 --- a/core/hdd/src/wlan_hdd_softap_tx_rx.c +++ b/core/hdd/src/wlan_hdd_softap_tx_rx.c @@ -306,6 +306,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 !=