cfg80211: fix dangling scan request checking
authorJohannes Berg <johannes@sipsolutions.net>
Tue, 18 Aug 2009 17:51:57 +0000 (19:51 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 20 Aug 2009 15:36:05 +0000 (11:36 -0400)
commitad002395fd230528281083f4be71855ed7e35b04
treec2bccce17ad69dcfb454fe3a38ba68f0f210b5b5
parent21f8a73f829797eb7ebc12202b4c68e10e751ddb
cfg80211: fix dangling scan request checking

My patch "cfg80211: fix deadlock" broke the code it
was supposed to fix, the scan request checking. But
it's not trivial to put it back the way it was, since
the original patch had a deadlock.

Now do it in a completely new way: queue the check
off to a work struct, where we can freely lock. But
that has some more complications, like needing to
wait for it to be done before the wiphy/rdev can be
destroyed, so some code is required to handle that.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
include/net/cfg80211.h
net/wireless/core.c
net/wireless/core.h