cfg80211: hold reg_mutex when updating regulatory
authorSven Neumann <s.neumann@raumfeld.com>
Tue, 30 Aug 2011 21:38:53 +0000 (23:38 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 14 Sep 2011 17:26:39 +0000 (13:26 -0400)
commiteac03e381957a05f3842ceb8de987a1025966ecf
tree5dfbfa366c63e481eb92b7f61dbabdd4f82b6ad3
parent56e6786e59cba2c714091ed53deffa6001a32841
cfg80211: hold reg_mutex when updating regulatory

The function wiphy_update_regulatory() uses the static variable
last_request and thus needs to be called with reg_mutex held.
This is the case for all users in reg.c, but the function was
exported for use by wiphy_register(), from where it is called
without the lock being held.

Fix this by making wiphy_update_regulatory() private and introducing
regulatory_update() as a wrapper that acquires and holds the lock.

Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
Cc: John W. Linville <linville@tuxdriver.com>
Cc: Luis R. Rodriguez <mcgrof@gmail.com>
Cc: Daniel Mack <daniel@zonque.org>
Cc: linux-wireless@vger.kernel.org
Acked-by: Luis R. Rodriguez <mcgrof@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/wireless/core.c
net/wireless/core.h
net/wireless/reg.c
net/wireless/reg.h