mirror of https://gitee.com/openkylin/linux.git
mwifiex: update statistics for bridged packets on AP interface
The bridged packets are updated to statistics on both TX and RX paths. Also fix a typo in the comment. Signed-off-by: Ujjal Roy <royujjal@gmail.com> Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
a1ed484960
commit
f7b598532f
|
@ -147,7 +147,7 @@ static void mwifiex_uap_queue_bridged_pkt(struct mwifiex_private *priv,
|
|||
hdr_chop = (u8 *)&rx_pkt_hdr->eth803_hdr - (u8 *)uap_rx_pd;
|
||||
}
|
||||
|
||||
/* Chop off the leading header bytes so the it points
|
||||
/* Chop off the leading header bytes so that it points
|
||||
* to the start of either the reconstructed EthII frame
|
||||
* or the 802.2/llc/snap frame.
|
||||
*/
|
||||
|
@ -179,6 +179,19 @@ static void mwifiex_uap_queue_bridged_pkt(struct mwifiex_private *priv,
|
|||
tx_info->bss_type = priv->bss_type;
|
||||
tx_info->flags |= MWIFIEX_BUF_FLAG_BRIDGED_PKT;
|
||||
|
||||
if (is_unicast_ether_addr(rx_pkt_hdr->eth803_hdr.h_dest)) {
|
||||
/* Update bridge packet statistics as the
|
||||
* packet is not going to kernel/upper layer.
|
||||
*/
|
||||
priv->stats.rx_bytes += skb->len;
|
||||
priv->stats.rx_packets++;
|
||||
|
||||
/* Sending bridge packet to TX queue, so save the packet
|
||||
* length in TXCB to update statistics in TX complete.
|
||||
*/
|
||||
tx_info->pkt_len = skb->len;
|
||||
}
|
||||
|
||||
do_gettimeofday(&tv);
|
||||
skb->tstamp = timeval_to_ktime(tv);
|
||||
mwifiex_wmm_add_buf_txqueue(priv, skb);
|
||||
|
|
Loading…
Reference in New Issue