diff options
author | Hamad Kadmany <qca_hkadmany@qca.qualcomm.com> | 2017-11-14 16:25:36 +0300 |
---|---|---|
committer | Kalle Valo <kvalo@qca.qualcomm.com> | 2017-12-02 17:18:22 +0300 |
commit | 144a12a6d83f3ca34ddefce5dee4d502afd2fc5b (patch) | |
tree | b792aadcb5211dc6334c3b99fc68371cbf191753 /drivers/net/wireless/ath/wil6210/cfg80211.c | |
parent | 3ead1e016c255a52e177bacf6c473fc99cb6ccb0 (diff) | |
download | linux-144a12a6d83f3ca34ddefce5dee4d502afd2fc5b.tar.xz |
wil6210: abort properly in cfg suspend
On-going operations were not aborted properly
and required locks were not taken.
Signed-off-by: Hamad Kadmany <qca_hkadmany@qca.qualcomm.com>
Signed-off-by: Maya Erez <qca_merez@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless/ath/wil6210/cfg80211.c')
-rw-r--r-- | drivers/net/wireless/ath/wil6210/cfg80211.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/wil6210/cfg80211.c b/drivers/net/wireless/ath/wil6210/cfg80211.c index 85d5c04618eb..c3d3c0c0e206 100644 --- a/drivers/net/wireless/ath/wil6210/cfg80211.c +++ b/drivers/net/wireless/ath/wil6210/cfg80211.c @@ -1727,9 +1727,12 @@ static int wil_cfg80211_suspend(struct wiphy *wiphy, wil_dbg_pm(wil, "suspending\n"); - wil_p2p_stop_discovery(wil); - + mutex_lock(&wil->mutex); + mutex_lock(&wil->p2p_wdev_mutex); + wil_p2p_stop_radio_operations(wil); wil_abort_scan(wil, true); + mutex_unlock(&wil->p2p_wdev_mutex); + mutex_unlock(&wil->mutex); out: return rc; |