summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsyeh <syeh@qca.qualcomm.com>2014-06-21 12:45:35 +0800
committerAkash Patel <c_akashp@qca.qualcomm.com>2014-06-23 18:20:04 -0700
commit0eca99f1829ff386259493b7df93ae6ac485d77c (patch)
tree9faa2e14d9b7c6d02bf65150b91dd9e972cb840e
parentb1a4f534fbf1a9939738d2ad13b19f982d01d414 (diff)
qcacld: tdls fail to build link for more than second times
Since the ap peer ref count is deducted abnormally during the process of building tdls link, it makes the txq being cleaned and fail to send the setup frames at the following build up process. Change-Id: I4d6fe8b667108bfd691ab7835903fb3165f46fad CRs-Fixed: 683797
-rw-r--r--CORE/CLD_TXRX/TXRX/ol_tx_classify.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/CORE/CLD_TXRX/TXRX/ol_tx_classify.c b/CORE/CLD_TXRX/TXRX/ol_tx_classify.c
index 631410d2503e..9663d2cf0f83 100644
--- a/CORE/CLD_TXRX/TXRX/ol_tx_classify.c
+++ b/CORE/CLD_TXRX/TXRX/ol_tx_classify.c
@@ -422,6 +422,10 @@ ol_tx_classify(
peer = ol_txrx_find_peer_by_addr(pdev, vdev->hl_tdls_ap_mac_addr.raw, &peer_id);
if (peer && (peer->peer_ids[0] == HTT_INVALID_PEER_ID))
peer = NULL;
+ else {
+ if (peer)
+ adf_os_atomic_inc(&peer->ref_cnt);
+ }
}
if (!peer)
peer = ol_txrx_assoc_peer_find(vdev);