All of lore.kernel.org
 help / color / mirror / Atom feed
From: Saeed Mahameed <saeedm@mellanox.com>
To: "David S. Miller" <davem@davemloft.net>
Cc: netdev@vger.kernel.org, Or Gerlitz <ogerlitz@mellanox.com>,
	Gal Pressman <galp@mellanox.com>,
	kernel-team@fb.com, Saeed Mahameed <saeedm@mellanox.com>
Subject: [PATCH net 8/8] net/mlx5e: Count LRO packets correctly
Date: Tue, 21 Mar 2017 15:59:19 +0200	[thread overview]
Message-ID: <20170321135919.25018-9-saeedm@mellanox.com> (raw)
In-Reply-To: <20170321135919.25018-1-saeedm@mellanox.com>

From: Gal Pressman <galp@mellanox.com>

RX packets statistics ('rx_packets' counter) used to count LRO packets
as one, even though it contains multiple segments.
This patch will increment the counter by the number of segments, and
align the driver with the behavior of other drivers in the stack.

Note that no information is lost in this patch due to 'rx_lro_packets'
counter existence.

Before, ethtool showed:
$ ethtool -S ens6 | egrep "rx_packets|rx_lro_packets"
     rx_packets: 435277
     rx_lro_packets: 35847
     rx_packets_phy: 1935066

Now, we will see the more logical statistics:
$ ethtool -S ens6 | egrep "rx_packets|rx_lro_packets"
     rx_packets: 1935066
     rx_lro_packets: 35847
     rx_packets_phy: 1935066

Fixes: e586b3b0baee ("net/mlx5: Ethernet Datapath files")
Signed-off-by: Gal Pressman <galp@mellanox.com>
Cc: kernel-team@fb.com
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
---
 drivers/net/ethernet/mellanox/mlx5/core/en_rx.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c b/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
index 3d371688fbbb..bafcb349a50c 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
@@ -601,6 +601,10 @@ static inline void mlx5e_build_rx_skb(struct mlx5_cqe64 *cqe,
 	if (lro_num_seg > 1) {
 		mlx5e_lro_update_hdr(skb, cqe, cqe_bcnt);
 		skb_shinfo(skb)->gso_size = DIV_ROUND_UP(cqe_bcnt, lro_num_seg);
+		/* Subtract one since we already counted this as one
+		 * "regular" packet in mlx5e_complete_rx_cqe()
+		 */
+		rq->stats.packets += lro_num_seg - 1;
 		rq->stats.lro_packets++;
 		rq->stats.lro_bytes += cqe_bcnt;
 	}
-- 
2.11.0

  parent reply	other threads:[~2017-03-21 13:59 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-21 13:59 [PATCH net 0/8] Mellanox mlx5 fixes 2017-03-21 Saeed Mahameed
2017-03-21 13:59 ` [PATCH net 1/8] net/mlx5: Add missing entries for set/query rate limit commands Saeed Mahameed
2017-03-21 13:59 ` [PATCH net 2/8] net/mlx5e: Change the TC offload rule add/del code path to be per NIC or E-Switch Saeed Mahameed
2017-03-21 13:59 ` [PATCH net 3/8] net/mlx5: E-Switch, Don't allow changing inline mode when flows are configured Saeed Mahameed
2017-03-21 13:59 ` [PATCH net 4/8] net/mlx5e: Use the proper UAPI values when offloading TC vlan actions Saeed Mahameed
2017-03-21 13:59 ` [PATCH net 5/8] net/mlx5e: Avoid supporting udp tunnel port ndo for VF reps Saeed Mahameed
2017-03-21 13:59 ` [PATCH net 6/8] net/mlx5: Increase number of max QPs in default profile Saeed Mahameed
2017-03-21 13:59 ` [PATCH net 7/8] net/mlx5e: Count GSO packets correctly Saeed Mahameed
2017-03-21 14:40   ` Alexei Starovoitov
2017-03-21 16:15   ` Eric Dumazet
2017-03-21 16:45     ` Saeed Mahameed
2017-03-21 13:59 ` Saeed Mahameed [this message]
2017-03-21 14:41   ` [PATCH net 8/8] net/mlx5e: Count LRO " Alexei Starovoitov
2017-03-22 19:13 ` [PATCH net 0/8] Mellanox mlx5 fixes 2017-03-21 David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170321135919.25018-9-saeedm@mellanox.com \
    --to=saeedm@mellanox.com \
    --cc=davem@davemloft.net \
    --cc=galp@mellanox.com \
    --cc=kernel-team@fb.com \
    --cc=netdev@vger.kernel.org \
    --cc=ogerlitz@mellanox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.