From: Sujith Manoharan <sujith.manoha...@atheros.com>

There is no need to use a locally stored reference.

Signed-off-by: Sujith Manoharan <sujith.manoha...@atheros.com>
---
 drivers/net/wireless/ath/ath9k/htc_drv_txrx.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c 
b/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
index 6ddcf93..04d8248 100644
--- a/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
+++ b/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
@@ -232,6 +232,7 @@ static bool ath9k_htc_check_tx_aggr(struct ath9k_htc_priv 
*priv,
 void ath9k_tx_tasklet(unsigned long data)
 {
        struct ath9k_htc_priv *priv = (struct ath9k_htc_priv *)data;
+       struct ieee80211_vif *vif;
        struct ieee80211_sta *sta;
        struct ieee80211_hdr *hdr;
        struct ieee80211_tx_info *tx_info;
@@ -243,12 +244,16 @@ void ath9k_tx_tasklet(unsigned long data)
                hdr = (struct ieee80211_hdr *) skb->data;
                fc = hdr->frame_control;
                tx_info = IEEE80211_SKB_CB(skb);
+               vif = tx_info->control.vif;
 
                memset(&tx_info->status, 0, sizeof(tx_info->status));
 
+               if (!vif)
+                       goto send_mac80211;
+
                rcu_read_lock();
 
-               sta = ieee80211_find_sta(priv->vif, hdr->addr1);
+               sta = ieee80211_find_sta(vif, hdr->addr1);
                if (!sta) {
                        rcu_read_unlock();
                        ieee80211_tx_status(priv->hw, skb);
@@ -278,6 +283,7 @@ void ath9k_tx_tasklet(unsigned long data)
 
                rcu_read_unlock();
 
+       send_mac80211:
                /* Send status to mac80211 */
                ieee80211_tx_status(priv->hw, skb);
        }
-- 
1.7.3.5

_______________________________________________
ath9k-devel mailing list
ath9k-devel@lists.ath9k.org
https://lists.ath9k.org/mailman/listinfo/ath9k-devel

Reply via email to