ath9k: Fix a locking bug in ath9k_add_interface()
authorDan Carpenter <dan.carpenter@oracle.com>
Fri, 19 Oct 2018 20:08:43 +0000 (23:08 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Nov 2019 17:00:04 +0000 (18:00 +0100)
commit191e8c8865237fdebc8145a6778721b8696210b3
treea370afde3c5c82d7acbab2e0d4bcc80f80cc6452
parentad196348b6f4a9dad8ba499bc57d4ca9d35453c1
ath9k: Fix a locking bug in ath9k_add_interface()

[ Upstream commit 461cf036057477805a8a391e5fd0f5264a5e56a8 ]

We tried to revert commit d9c52fd17cb4 ("ath9k: fix tx99 with monitor
mode interface") but accidentally missed part of the locking change.

The lock has to be held earlier so that we're holding it when we do
"sc->tx99_vif = vif;" and also there in the current code there is a
stray unlock before we have taken the lock.

Fixes: 6df0580be8bc ("ath9k: add back support for using active monitor interfaces for tx99")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/ath/ath9k/main.c