mac80211: avoid scheduling while atomic in mesh_rx_plink_frame
authorJohn W. Linville <linville@tuxdriver.com>
Mon, 21 Jun 2010 21:14:07 +0000 (17:14 -0400)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 24 Jun 2010 19:42:30 +0000 (15:42 -0400)
While mesh_rx_plink_frame holds sta->lock...

mesh_rx_plink_frame ->
mesh_plink_inc_estab_count ->
ieee80211_bss_info_change_notify

...but ieee80211_bss_info_change_notify is allowed to sleep.  A driver
taking advantage of that allowance can cause a scheduling while
atomic bug.  Similar paths exist for mesh_plink_dec_estab_count,
so work around those as well.

http://bugzilla.kernel.org/show_bug.cgi?id=16099

Also, correct a minor kerneldoc comment error (mismatched function names).

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Cc: stable@kernel.org

No differences found