]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
ath9k: dynack: check da->enabled first in sampling routines
authorLorenzo Bianconi <lorenzo.bianconi@redhat.com>
Fri, 2 Nov 2018 20:49:57 +0000 (21:49 +0100)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Wed, 14 Aug 2019 09:18:49 +0000 (11:18 +0200)
BugLink: https://bugs.launchpad.net/bugs/1837664
commit 9d3d65a91f027b8a9af5e63752d9b78cb10eb92d upstream.

Check da->enabled flag first in ath_dynack_sample_tx_ts and
ath_dynack_sample_ack_ts routines in order to avoid useless
processing

Tested-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@redhat.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Khalid Elmously <khalid.elmously@canonical.com>
drivers/net/wireless/ath/ath9k/dynack.c

index d2a7531ceafee9d8699ca65c7de0ddab3d27ec99..6e236a4854311cc972b97ccda8e782392bf9a2e3 100644 (file)
@@ -184,7 +184,7 @@ void ath_dynack_sample_tx_ts(struct ath_hw *ah, struct sk_buff *skb,
        struct ath_common *common = ath9k_hw_common(ah);
        struct ieee80211_tx_info *info = IEEE80211_SKB_CB(skb);
 
-       if ((info->flags & IEEE80211_TX_CTL_NO_ACK) || !da->enabled)
+       if (!da->enabled || (info->flags & IEEE80211_TX_CTL_NO_ACK))
                return;
 
        spin_lock_bh(&da->qlock);
@@ -266,7 +266,7 @@ void ath_dynack_sample_ack_ts(struct ath_hw *ah, struct sk_buff *skb,
        struct ath_common *common = ath9k_hw_common(ah);
        struct ieee80211_hdr *hdr = (struct ieee80211_hdr *)skb->data;
 
-       if (!ath_dynack_bssidmask(ah, hdr->addr1) || !da->enabled)
+       if (!da->enabled || !ath_dynack_bssidmask(ah, hdr->addr1))
                return;
 
        spin_lock_bh(&da->qlock);