qcacld-3.0: Protect the ROC ctx with mutex during mgmt TX

qcacld-2.0 to qcacld-3.0 propagation

Protect access of remain_on_chan_ctx in __wlan_hdd_mgmt_tx
under remain_on_chan_ctx_lock mutex.

CRs-Fixed: 1054846
Change-Id: Ia96d1ea901bcbe95b5ecf608d63ba6a544a1465c
This commit is contained in:
Deepthi Gowri 2016-10-13 14:31:41 +05:30 • committed by qcabuildsw
commit 0a151cbb2e

View file

@ -1449,14 +1449,17 @@ static int __wlan_hdd_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev,
} else
mutex_unlock(&cfgState->remain_on_chan_ctx_lock);
mutex_lock(&cfgState->remain_on_chan_ctx_lock);
if ((cfgState->remain_on_chan_ctx != NULL) &&
(cfgState->current_freq == chan->center_freq)
) {
mutex_unlock(&cfgState->remain_on_chan_ctx_lock);
hdd_notice("action frame: extending the wait time");
extendedWait = (uint16_t) wait;
goto send_frame;
}
mutex_unlock(&cfgState->remain_on_chan_ctx_lock);
INIT_COMPLETION(pAdapter->offchannel_tx_event);
status = wlan_hdd_request_remain_on_channel(wiphy, dev, chan,