From: Jakub Kicinski <kuba@kernel.org>
To: davem@davemloft.net
Cc: netdev@vger.kernel.org, mkubecek@suse.cz,
michael.chan@broadcom.com, tariqt@nvidia.com, saeedm@nvidia.com,
alexander.duyck@gmail.com, andrew@lunn.ch,
Jakub Kicinski <kuba@kernel.org>
Subject: [PATCH net-next 5/8] bnxt: add pause frame stats
Date: Fri, 11 Sep 2020 12:52:55 -0700 [thread overview]
Message-ID: <20200911195258.1048468-6-kuba@kernel.org> (raw)
In-Reply-To: <20200911195258.1048468-1-kuba@kernel.org>
These stats are already reported in ethtool -S.
Hopefully they are equivalent to standard stats?
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
---
.../net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
index d0928334bdc8..b5de242766e3 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
@@ -1778,6 +1778,24 @@ static void bnxt_get_pauseparam(struct net_device *dev,
epause->tx_pause = !!(link_info->req_flow_ctrl & BNXT_LINK_PAUSE_TX);
}
+static void bnxt_get_pause_stats(struct net_device *dev,
+ struct ethtool_pause_stats *epstat)
+{
+ struct bnxt *bp = netdev_priv(dev);
+ struct rx_port_stats *rx_stats;
+ struct tx_port_stats *tx_stats;
+
+ if (BNXT_VF(bp) || !(bp->flags & BNXT_FLAG_PORT_STATS))
+ return;
+
+ rx_stats = (void *)bp->port_stats.sw_stats;
+ tx_stats = (void *)((unsigned long)bp->port_stats.sw_stats +
+ BNXT_TX_PORT_STATS_BYTE_OFFSET);
+
+ epstat->rx_pause_frames = rx_stats->rx_pause_frames;
+ epstat->tx_pause_frames = tx_stats->tx_pause_frames;
+}
+
static int bnxt_set_pauseparam(struct net_device *dev,
struct ethtool_pauseparam *epause)
{
@@ -3645,6 +3663,7 @@ const struct ethtool_ops bnxt_ethtool_ops = {
ETHTOOL_COALESCE_USE_ADAPTIVE_RX,
.get_link_ksettings = bnxt_get_link_ksettings,
.set_link_ksettings = bnxt_set_link_ksettings,
+ .get_pause_stats = bnxt_get_pause_stats,
.get_pauseparam = bnxt_get_pauseparam,
.set_pauseparam = bnxt_set_pauseparam,
.get_drvinfo = bnxt_get_drvinfo,
--
2.26.2
next prev parent reply other threads:[~2020-09-11 19:53 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-11 19:52 [PATCH net-next 0/7] ethtool: add pause frame stats Jakub Kicinski
2020-09-11 19:52 ` [PATCH net-next 1/8] ethtool: add standard pause stats Jakub Kicinski
2020-09-11 19:52 ` [PATCH net-next 2/8] docs: net: include the new ethtool pause stats in the stats doc Jakub Kicinski
2020-09-11 19:52 ` [PATCH net-next 3/8] netdevsim: add pause frame stats Jakub Kicinski
2020-09-12 14:38 ` kernel test robot
2020-09-12 14:38 ` kernel test robot
2020-09-12 14:38 ` [RFC PATCH] netdevsim: nsim_ethtool_ops can be static kernel test robot
2020-09-11 19:52 ` [PATCH net-next 4/8] selftests: add a test for ethtool pause stats Jakub Kicinski
2020-09-11 19:52 ` Jakub Kicinski [this message]
2020-09-11 22:34 ` [PATCH net-next 5/8] bnxt: add pause frame stats Michael Chan
2020-09-11 22:43 ` Jakub Kicinski
2020-09-11 22:46 ` Jakub Kicinski
2020-09-11 22:53 ` Michael Chan
2020-09-11 22:58 ` Jakub Kicinski
2020-09-12 15:57 ` kernel test robot
2020-09-11 19:52 ` [PATCH net-next 6/8] mlx5: " Jakub Kicinski
2020-09-11 21:49 ` Saeed Mahameed
2020-09-11 19:52 ` [PATCH net-next 7/8] ixgbe: " Jakub Kicinski
2020-09-11 21:12 ` Alexander Duyck
2020-09-11 22:13 ` Jakub Kicinski
2020-09-13 9:14 ` Ido Schimmel
2020-09-14 16:20 ` Jakub Kicinski
2020-09-11 19:52 ` [PATCH net-next 8/8] mlx4: " Jakub Kicinski
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=20200911195258.1048468-6-kuba@kernel.org \
--to=kuba@kernel.org \
--cc=alexander.duyck@gmail.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=michael.chan@broadcom.com \
--cc=mkubecek@suse.cz \
--cc=netdev@vger.kernel.org \
--cc=saeedm@nvidia.com \
--cc=tariqt@nvidia.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.