cfg80211: sched_scan_mtx lock in cfg80211_conn_work()
authorArtem Savkov <artem.savkov@gmail.com>
Sat, 30 Mar 2013 17:20:14 +0000 (21:20 +0400)
committerJohannes Berg <johannes.berg@intel.com>
Sat, 30 Mar 2013 21:33:19 +0000 (22:33 +0100)
commit90e0970f8788cef2c8f5183af5a98f4f94600faf
tree4245c0e1ab768e3d21e0dcbbf24bd298693543ae
parent382a103b2b528a3085cde4ac56fc69d92a828b72
cfg80211: sched_scan_mtx lock in cfg80211_conn_work()

Introduced in f9f475292dbb0e7035fb6661d1524761ea0888d9
("cfg80211: always check for scan end on P2P device")

cfg80211_conn_scan() which requires sched_scan_mtx to be held can be called
from cfg80211_conn_work(). Without this we are hitting multiple warnings like
the following:

WARNING: at net/wireless/sme.c:88 cfg80211_conn_scan+0x1dc/0x3a0 [cfg80211]()
Hardware name: 0578A21
Modules linked in: ...
Pid: 620, comm: kworker/3:1 Not tainted 3.9.0-rc4-next-20130328+ #326
Call Trace:
 [<c1036992>] warn_slowpath_common+0x72/0xa0
 [<c10369e2>] warn_slowpath_null+0x22/0x30
 [<faa4b0ec>] cfg80211_conn_scan+0x1dc/0x3a0 [cfg80211]
 [<faa4b344>] cfg80211_conn_do_work+0x94/0x380 [cfg80211]
 [<faa4c3b2>] cfg80211_conn_work+0xa2/0x130 [cfg80211]
 [<c1051858>] process_one_work+0x198/0x450

Signed-off-by: Artem Savkov <artem.savkov@gmail.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/wireless/sme.c