Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 04662360 authored by Pavel Roskin's avatar Pavel Roskin Committed by John W. Linville
Browse files

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: default avatarPavel Roskin <proski@gnu.org>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 026331c4
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -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);
	}