diff mbox

[v4] ath10k: Cleanup calling ath10k_htt_rx_h_unchain

Message ID 1474981503694.62077@qti.qualcomm.com (mailing list archive)
State Not Applicable
Delegated to: Kalle Valo
Headers show

Commit Message

Mohammed Shafi Shajakhan Sept. 27, 2016, 1:04 p.m. UTC
apologies please ignore this , wrong patch due to confusing v4 tag
 
please review,

[PATCH] ath10k: Cleanup calling ath10k_htt_rx_h_unchain
diff mbox

Patch

diff --git a/drivers/net/wireless/ath/ath10k/htt_rx.c b/drivers/net/wireless/ath/ath10k/htt_rx.c
index 7ae9349..e51dace 100644
--- a/drivers/net/wireless/ath/ath10k/htt_rx.c
+++ b/drivers/net/wireless/ath/ath10k/htt_rx.c
@@ -1459,8 +1459,7 @@  static int ath10k_unchain_msdu(struct sk_buff_head *amsdu)
 }

 static void ath10k_htt_rx_h_unchain(struct ath10k *ar,
-                                   struct sk_buff_head *amsdu,
-                                   bool chained)
+                                   struct sk_buff_head *amsdu)
 {
        struct sk_buff *first;
        struct htt_rx_desc *rxd;
@@ -1471,9 +1470,6 @@  static void ath10k_htt_rx_h_unchain(struct ath10k *ar,
        decap = MS(__le32_to_cpu(rxd->msdu_start.common.info1),
                   RX_MSDU_START_INFO1_DECAP_FORMAT);

-       if (!chained)
-               return;
-
        /* FIXME: Current unchaining logic can only handle simple case of raw
         * msdu chaining. If decapping is other than raw the chaining may be
         * more complex and this isn't handled by the current code. Don't even
@@ -1550,7 +1546,11 @@  static int ath10k_htt_rx_handle_amsdu(struct ath10k_htt *htt)
        }

        ath10k_htt_rx_h_ppdu(ar, &amsdu, rx_status, 0xffff);
-       ath10k_htt_rx_h_unchain(ar, &amsdu, ret > 0);
+
+       /* only for ret = 1 indicates chained msdus */
+       if (ret > 0)
+               ath10k_htt_rx_h_unchain(ar, &amsdu);
+
        ath10k_htt_rx_h_filter(ar, &amsdu, rx_status);
        ath10k_htt_rx_h_mpdu(ar, &amsdu, rx_status);
        ath10k_htt_rx_h_deliver(ar, &amsdu, rx_status);