|
@@ -1,5 +1,5 @@
|
|
|
/*
|
|
|
- * Copyright (c) 2012-2020 The Linux Foundation. All rights reserved.
|
|
|
+ * Copyright (c) 2012-2021 The Linux Foundation. All rights reserved.
|
|
|
*
|
|
|
* Permission to use, copy, modify, and/or distribute this software for
|
|
|
* any purpose with or without fee is hereby granted, provided that the
|
|
@@ -2311,7 +2311,8 @@ QDF_STATUS hdd_rx_deliver_to_stack(struct hdd_adapter *adapter,
|
|
|
adapter->hdd_stats.tx_rx_stats.rx_non_aggregated++;
|
|
|
|
|
|
/* Account for GRO/LRO ineligible packets, mostly UDP */
|
|
|
- hdd_ctx->no_rx_offload_pkt_cnt++;
|
|
|
+ if (qdf_nbuf_get_gso_segs(skb) == 0)
|
|
|
+ hdd_ctx->no_rx_offload_pkt_cnt++;
|
|
|
|
|
|
if (qdf_likely((hdd_ctx->enable_dp_rx_threads ||
|
|
|
hdd_ctx->enable_rxthread) &&
|
|
@@ -2369,7 +2370,8 @@ QDF_STATUS hdd_rx_deliver_to_stack(struct hdd_adapter *adapter,
|
|
|
adapter->hdd_stats.tx_rx_stats.rx_non_aggregated++;
|
|
|
|
|
|
/* Account for GRO/LRO ineligible packets, mostly UDP */
|
|
|
- hdd_ctx->no_rx_offload_pkt_cnt++;
|
|
|
+ if (qdf_nbuf_get_gso_segs(skb) == 0)
|
|
|
+ hdd_ctx->no_rx_offload_pkt_cnt++;
|
|
|
|
|
|
if (qdf_likely((hdd_ctx->enable_dp_rx_threads ||
|
|
|
hdd_ctx->enable_rxthread) &&
|
|
@@ -2596,6 +2598,8 @@ QDF_STATUS hdd_rx_packet_cbk(void *adapter_context,
|
|
|
skb->protocol = eth_type_trans(skb, skb->dev);
|
|
|
++adapter->hdd_stats.tx_rx_stats.rx_packets[cpu_index];
|
|
|
++adapter->stats.rx_packets;
|
|
|
+ /* count aggregated RX frame into stats */
|
|
|
+ adapter->stats.rx_packets += qdf_nbuf_get_gso_segs(skb);
|
|
|
adapter->stats.rx_bytes += skb->len;
|
|
|
|
|
|
/* Incr GW Rx count for NUD tracking based on GW mac addr */
|