mwl8k: disable softirqs when accessing sta_notify_list

Use spin_[un]lock_bh in mwl8k_sta_notify().  The sta_notify handler is
required to be atomic, yet it can be called in process context, so make
sure one call won't preempt another.

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Pavel Roskin 2010-02-13 22:13:06 -05:00 committed by John W. Linville
parent 026331c4d9
commit 0466236085

View File

@ -3784,9 +3784,9 @@ mwl8k_sta_notify(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
s->cmd = cmd;
s->sta = *sta;
spin_lock(&priv->sta_notify_list_lock);
spin_lock_bh(&priv->sta_notify_list_lock);
list_add_tail(&s->list, &priv->sta_notify_list);
spin_unlock(&priv->sta_notify_list_lock);
spin_unlock_bh(&priv->sta_notify_list_lock);
ieee80211_queue_work(hw, &priv->sta_notify_worker);
}