mwifiex: disable transmission buffer aggregation for AMSDU packets
authorYogesh Ashok Powar <yogeshp@marvell.com>
Mon, 6 Jun 2011 09:24:17 +0000 (14:54 +0530)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 7 Jun 2011 18:44:03 +0000 (14:44 -0400)
Padding per MSDU will affect the length of next packet and hence
the exact length of next packet is uncertain here.

Also, aggregation of transmission buffer, while downloading the
data to the card, wont gain much on the AMSDU packets as the AMSDU
packets utilizes the transmission buffer space to the maximum
(adapter->tx_buf_size).

Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/mwifiex/11n_aggr.c

index 25312e4437f580642c85445389cf40e29ee1f111..1a453a605b3f31e5d10bff47bed8176d280360a2 100644 (file)
@@ -233,11 +233,19 @@ mwifiex_11n_aggregate_pkt(struct mwifiex_private *priv,
 
        skb_push(skb_aggr, headroom);
 
-       tx_param.next_pkt_len = ((pra_list->total_pkts_size) ?
-                                (((pra_list->total_pkts_size) >
-                                  adapter->tx_buf_size) ? adapter->
-                                 tx_buf_size : pra_list->total_pkts_size +
-                                 LLC_SNAP_LEN + sizeof(struct txpd)) : 0);
+       /*
+        * Padding per MSDU will affect the length of next
+        * packet and hence the exact length of next packet
+        * is uncertain here.
+        *
+        * Also, aggregation of transmission buffer, while
+        * downloading the data to the card, wont gain much
+        * on the AMSDU packets as the AMSDU packets utilizes
+        * the transmission buffer space to the maximum
+        * (adapter->tx_buf_size).
+        */
+       tx_param.next_pkt_len = 0;
+
        ret = adapter->if_ops.host_to_card(adapter, MWIFIEX_TYPE_DATA,
                                             skb_aggr->data,
                                             skb_aggr->len, &tx_param);