Commit c7d9ed9e authored by Avinash Patil's avatar Avinash Patil Committed by John W. Linville

mwifiex: maintain outstanding packet count for RA list instead of packet size

Maintain total outstanding packet count for RA list instead of total
outstanding size as packet count metric seems more reasonable for
checking threshold etc.
Signed-off-by: default avatarAvinash Patil <patila@marvell.com>
Signed-off-by: default avatarBing Zhao <bzhao@marvell.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent f0cb84f8
...@@ -189,7 +189,7 @@ mwifiex_11n_aggregate_pkt(struct mwifiex_private *priv, ...@@ -189,7 +189,7 @@ mwifiex_11n_aggregate_pkt(struct mwifiex_private *priv,
skb_src = skb_dequeue(&pra_list->skb_head); skb_src = skb_dequeue(&pra_list->skb_head);
pra_list->total_pkts_size -= skb_src->len; pra_list->total_pkt_count--;
atomic_dec(&priv->wmm.tx_pkts_queued); atomic_dec(&priv->wmm.tx_pkts_queued);
...@@ -268,7 +268,7 @@ mwifiex_11n_aggregate_pkt(struct mwifiex_private *priv, ...@@ -268,7 +268,7 @@ mwifiex_11n_aggregate_pkt(struct mwifiex_private *priv,
skb_queue_tail(&pra_list->skb_head, skb_aggr); skb_queue_tail(&pra_list->skb_head, skb_aggr);
pra_list->total_pkts_size += skb_aggr->len; pra_list->total_pkt_count++;
atomic_inc(&priv->wmm.tx_pkts_queued); atomic_inc(&priv->wmm.tx_pkts_queued);
......
...@@ -204,11 +204,11 @@ struct mwifiex_ra_list_tbl { ...@@ -204,11 +204,11 @@ struct mwifiex_ra_list_tbl {
struct list_head list; struct list_head list;
struct sk_buff_head skb_head; struct sk_buff_head skb_head;
u8 ra[ETH_ALEN]; u8 ra[ETH_ALEN];
u32 total_pkts_size;
u32 is_11n_enabled; u32 is_11n_enabled;
u16 max_amsdu; u16 max_amsdu;
u16 ba_pkt_count; u16 ba_pkt_count;
u8 ba_packet_thr; u8 ba_packet_thr;
u16 total_pkt_count;
}; };
struct mwifiex_tid_tbl { struct mwifiex_tid_tbl {
......
...@@ -120,7 +120,7 @@ mwifiex_wmm_allocate_ralist_node(struct mwifiex_adapter *adapter, u8 *ra) ...@@ -120,7 +120,7 @@ mwifiex_wmm_allocate_ralist_node(struct mwifiex_adapter *adapter, u8 *ra)
memcpy(ra_list->ra, ra, ETH_ALEN); memcpy(ra_list->ra, ra, ETH_ALEN);
ra_list->total_pkts_size = 0; ra_list->total_pkt_count = 0;
dev_dbg(adapter->dev, "info: allocated ra_list %p\n", ra_list); dev_dbg(adapter->dev, "info: allocated ra_list %p\n", ra_list);
...@@ -679,8 +679,8 @@ mwifiex_wmm_add_buf_txqueue(struct mwifiex_private *priv, ...@@ -679,8 +679,8 @@ mwifiex_wmm_add_buf_txqueue(struct mwifiex_private *priv,
skb_queue_tail(&ra_list->skb_head, skb); skb_queue_tail(&ra_list->skb_head, skb);
ra_list->total_pkts_size += skb->len;
ra_list->ba_pkt_count++; ra_list->ba_pkt_count++;
ra_list->total_pkt_count++;
if (atomic_read(&priv->wmm.highest_queued_prio) < if (atomic_read(&priv->wmm.highest_queued_prio) <
tos_to_tid_inv[tid_down]) tos_to_tid_inv[tid_down])
...@@ -1037,7 +1037,7 @@ mwifiex_send_single_packet(struct mwifiex_private *priv, ...@@ -1037,7 +1037,7 @@ mwifiex_send_single_packet(struct mwifiex_private *priv,
tx_info = MWIFIEX_SKB_TXCB(skb); tx_info = MWIFIEX_SKB_TXCB(skb);
dev_dbg(adapter->dev, "data: dequeuing the packet %p %p\n", ptr, skb); dev_dbg(adapter->dev, "data: dequeuing the packet %p %p\n", ptr, skb);
ptr->total_pkts_size -= skb->len; ptr->total_pkt_count--;
if (!skb_queue_empty(&ptr->skb_head)) if (!skb_queue_empty(&ptr->skb_head))
skb_next = skb_peek(&ptr->skb_head); skb_next = skb_peek(&ptr->skb_head);
...@@ -1062,7 +1062,7 @@ mwifiex_send_single_packet(struct mwifiex_private *priv, ...@@ -1062,7 +1062,7 @@ mwifiex_send_single_packet(struct mwifiex_private *priv,
skb_queue_tail(&ptr->skb_head, skb); skb_queue_tail(&ptr->skb_head, skb);
ptr->total_pkts_size += skb->len; ptr->total_pkt_count++;
ptr->ba_pkt_count++; ptr->ba_pkt_count++;
tx_info->flags |= MWIFIEX_BUF_FLAG_REQUEUED_PKT; tx_info->flags |= MWIFIEX_BUF_FLAG_REQUEUED_PKT;
spin_unlock_irqrestore(&priv->wmm.ra_list_spinlock, spin_unlock_irqrestore(&priv->wmm.ra_list_spinlock,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment