Patch "ath9k: fix using sta->drv_priv before initializing it" has been added to the 4.4-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
ath9k: fix using sta->drv_priv before initializing it
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
ath9k-fix-using-sta-drv_priv-before-initializing-it.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
7711aaf08ad3fc4d0e937eec1de0a63620444ce7Mon Sep 17 00:00:00 2001
From: Felix Fietkau <[email protected]>
Date: Fri, 19 Aug 2016 13:37:46 +0300
Subject: ath9k: fix using sta->drv_priv before initializing it
From: Felix Fietkau <[email protected]>
commit 7711aaf08ad3fc4d0e937eec1de0a63620444ce7 upstream.
A station pointer can be passed to the driver on tx, before it has been marked as associated. Since ath9k_sta_state was initializing the entry too late, it resulted in some spurious crashes.
--- drivers/net/wireless/ath/ath9k/main.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/net/wireless/ath/ath9k/main.c +4 -4
@@ -1550,13 +1550,13 @@ static int ath9k_sta_state(struct ieee80struct ath_common *common =ath9k_hw_common (sc->sc_ah);int ret =0 ; -if (old_state ==IEEE80211_STA_AUTH && - new_state ==IEEE80211_STA_ASSOC ) { +if (old_state ==IEEE80211_STA_NOTEXIST && + new_state ==IEEE80211_STA_NONE ) { ret =ath9k_sta_add (hw, vif, sta);ath_dbg (common,CONFIG ,"Add station: %pM\n" , sta->addr); - }else if (old_state ==IEEE80211_STA_ASSOC && - new_state ==IEEE80211_STA_AUTH ) { + }else if (old_state ==IEEE80211_STA_NONE && + new_state ==IEEE80211_STA_NOTEXIST ) { ret =ath9k_sta_remove (hw, vif, sta);ath_dbg (common,CONFIG ,"Remove station: %pM\n" , sta->addr);
Patches currently in stable-queue which might be from [email protected] are
queue-4.4/ath9k-fix-using-sta-drv_priv-before-initializing-it.patch