DPDK patches and discussions
 help / color / mirror / Atom feed
From: Christos Ricudis <ricudis@niometrics.com>
To: Ajit Khaparde <ajit.khaparde@broadcom.com>,
	Somnath Kotur <somnath.kotur@broadcom.com>
Cc: dev@dpdk.org, Christos Ricudis <ricudis@niometrics.com>
Subject: [dpdk-dev] [PATCH v2] net/bnxt: add missing counters to xstats
Date: Tue, 14 Apr 2020 00:35:54 +0800	[thread overview]
Message-ID: <1586795754-22985-1-git-send-email-ricudis@niometrics.com> (raw)
In-Reply-To: <1586767715-9811-1-git-send-email-ricudis@niometrics.com>

Add several missing hardware counters to xstats

Signed-off-by: Christos Ricudis <ricudis@niometrics.com>
---
 drivers/net/bnxt/bnxt_stats.c | 127 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 127 insertions(+)

diff --git a/drivers/net/bnxt/bnxt_stats.c b/drivers/net/bnxt/bnxt_stats.c
index 4668629..29628bd 100644
--- a/drivers/net/bnxt/bnxt_stats.c
+++ b/drivers/net/bnxt/bnxt_stats.c
@@ -55,32 +55,80 @@
 				rx_pause_frames)},
 	{"rx_pfc_frames", offsetof(struct rx_port_stats,
 				rx_pfc_frames)},
+	{"rx_unsupported_opcode_frames", offsetof(struct rx_port_stats,
+				rx_unsupported_opcode_frames)},
+	{"rx_unsupported_da_pausepfc_frames", offsetof(struct rx_port_stats,
+				rx_unsupported_da_pausepfc_frames)},
+	{"rx_wrong_sa_frames", offsetof(struct rx_port_stats,
+				rx_wrong_sa_frames)},
 	{"rx_align_err_frames", offsetof(struct rx_port_stats,
 				rx_align_err_frames)},
+	{"rx_oor_len_frames", offsetof(struct rx_port_stats,
+				rx_oor_len_frames)},
+	{"rx_code_err_frames", offsetof(struct rx_port_stats,
+				rx_code_err_frames)},
+	{"rx_false_carrier_frames", offsetof(struct rx_port_stats,
+				rx_false_carrier_frames)},
 	{"rx_ovrsz_frames", offsetof(struct rx_port_stats,
 				rx_ovrsz_frames)},
 	{"rx_jbr_frames", offsetof(struct rx_port_stats,
 				rx_jbr_frames)},
 	{"rx_mtu_err_frames", offsetof(struct rx_port_stats,
 				rx_mtu_err_frames)},
+	{"rx_match_crc_frames", offsetof(struct rx_port_stats,
+				rx_match_crc_frames)},
+	{"rx_promiscuous_frames", offsetof(struct rx_port_stats,
+				rx_promiscuous_frames)},
 	{"rx_tagged_frames", offsetof(struct rx_port_stats,
 				rx_tagged_frames)},
 	{"rx_double_tagged_frames", offsetof(struct rx_port_stats,
 				rx_double_tagged_frames)},
+	{"rx_trunc_frames", offsetof(struct rx_port_stats,
+				rx_trunc_frames)},
 	{"rx_good_frames", offsetof(struct rx_port_stats,
 				rx_good_frames)},
+	{"rx_sch_crc_err_frames", offsetof(struct rx_port_stats,
+				rx_sch_crc_err_frames)},
 	{"rx_undrsz_frames", offsetof(struct rx_port_stats,
 				rx_undrsz_frames)},
+	{"rx_frag_frames", offsetof(struct rx_port_stats,
+				rx_frag_frames)},
 	{"rx_eee_lpi_events", offsetof(struct rx_port_stats,
 				rx_eee_lpi_events)},
 	{"rx_eee_lpi_duration", offsetof(struct rx_port_stats,
 				rx_eee_lpi_duration)},
+	{"rx_llfc_physical_msgs", offsetof(struct rx_port_stats,
+				rx_llfc_physical_msgs)},
+	{"rx_llfc_logical_msgs", offsetof(struct rx_port_stats,
+				rx_llfc_logical_msgs)},
+	{"rx_llfc_msgs_with_crc_err", offsetof(struct rx_port_stats,
+				rx_llfc_msgs_with_crc_err)},
+	{"rx_hcfc_msgs", offsetof(struct rx_port_stats,
+				rx_hcfc_msgs)},
+	{"rx_hcfc_msgs_with_crc_err", offsetof(struct rx_port_stats,
+				rx_hcfc_msgs_with_crc_err)},
 	{"rx_bytes", offsetof(struct rx_port_stats,
 				rx_bytes)},
 	{"rx_runt_bytes", offsetof(struct rx_port_stats,
 				rx_runt_bytes)},
 	{"rx_runt_frames", offsetof(struct rx_port_stats,
 				rx_runt_frames)},
+	{"rx_pfc_xon2xoff_frames_pri0", offsetof(struct rx_port_stats,
+				rx_pfc_xon2xoff_frames_pri0)},
+	{"rx_pfc_xon2xoff_frames_pri1", offsetof(struct rx_port_stats,
+				rx_pfc_xon2xoff_frames_pri1)},
+	{"rx_pfc_xon2xoff_frames_pri2", offsetof(struct rx_port_stats,
+				rx_pfc_xon2xoff_frames_pri2)},
+	{"rx_pfc_xon2xoff_frames_pri3", offsetof(struct rx_port_stats,
+				rx_pfc_xon2xoff_frames_pri3)},
+	{"rx_pfc_xon2xoff_frames_pri4", offsetof(struct rx_port_stats,
+				rx_pfc_xon2xoff_frames_pri4)},
+	{"rx_pfc_xon2xoff_frames_pri5", offsetof(struct rx_port_stats,
+				rx_pfc_xon2xoff_frames_pri5)},
+	{"rx_pfc_xon2xoff_frames_pri6", offsetof(struct rx_port_stats,
+				rx_pfc_xon2xoff_frames_pri6)},
+	{"rx_pfc_xon2xoff_frames_pri7", offsetof(struct rx_port_stats,
+				rx_pfc_xon2xoff_frames_pri7)},
 	{"rx_pfc_ena_frames_pri0", offsetof(struct rx_port_stats,
 				rx_pfc_ena_frames_pri0)},
 	{"rx_pfc_ena_frames_pri1", offsetof(struct rx_port_stats,
@@ -97,6 +145,10 @@
 				rx_pfc_ena_frames_pri6)},
 	{"rx_pfc_ena_frames_pri7", offsetof(struct rx_port_stats,
 				rx_pfc_ena_frames_pri7)},
+	{"rx_stat_discard", offsetof(struct rx_port_stats,
+				rx_stat_discard)},
+	{"rx_stat_err", offsetof(struct rx_port_stats,
+				rx_stat_err)},
 };
 
 static const struct bnxt_xstats_name_off bnxt_tx_stats_strings[] = {
@@ -140,8 +192,32 @@
 				tx_jabber_frames)},
 	{"tx_fcs_err_frames", offsetof(struct tx_port_stats,
 				tx_fcs_err_frames)},
+	{"tx_control_frames", offsetof(struct tx_port_stats,
+				tx_control_frames)},
+	{"tx_oversz_frames", offsetof(struct tx_port_stats,
+				tx_oversz_frames)},
+	{"tx_single_dfrl_frames", offsetof(struct tx_port_stats,
+				tx_single_dfrl_frames)},
+	{"tx_multi_dfrl_frames", offsetof(struct tx_port_stats,
+				tx_multi_dfrl_frames)},
+	{"tx_single_coll_frames", offsetof(struct tx_port_stats,
+				tx_single_coll_frames)},
+	{"tx_multi_coll_frames", offsetof(struct tx_port_stats,
+				tx_multi_coll_frames)},
+	{"tx_late_coll_frames", offsetof(struct tx_port_stats,
+				tx_late_coll_frames)},
+	{"tx_excessive_coll_frames", offsetof(struct tx_port_stats,
+				tx_excessive_coll_frames)},
+	{"tx_frag_frames", offsetof(struct tx_port_stats,
+				tx_frag_frames)},
 	{"tx_err", offsetof(struct tx_port_stats,
 				tx_err)},
+	{"tx_tagged_frames", offsetof(struct tx_port_stats,
+				tx_tagged_frames)},
+	{"tx_dbl_tagged_frames", offsetof(struct tx_port_stats,
+				tx_dbl_tagged_frames)},
+	{"tx_runt_frames", offsetof(struct tx_port_stats,
+				tx_runt_frames)},
 	{"tx_fifo_underruns", offsetof(struct tx_port_stats,
 				tx_fifo_underruns)},
 	{"tx_eee_lpi_events", offsetof(struct tx_port_stats,
@@ -168,6 +244,16 @@
 				tx_pfc_ena_frames_pri6)},
 	{"tx_pfc_ena_frames_pri7", offsetof(struct tx_port_stats,
 				tx_pfc_ena_frames_pri7)},
+	{"tx_llfc_logical_msgs", offsetof(struct tx_port_stats,
+				tx_llfc_logical_msgs)},
+	{"tx_hcfc_msgs", offsetof(struct tx_port_stats,
+				tx_hcfc_msgs)},
+	{"tx_xthol_frames", offsetof(struct tx_port_stats,
+				tx_xthol_frames)},
+	{"tx_stat_discard", offsetof(struct tx_port_stats,
+				tx_stat_discard)},
+	{"tx_stat_error", offsetof(struct tx_port_stats,
+				tx_stat_error)},
 };
 
 static const struct bnxt_xstats_name_off bnxt_func_stats_strings[] = {
@@ -213,6 +299,7 @@
 				rx_agg_aborts)},
 };
 
+
 static const struct bnxt_xstats_name_off bnxt_rx_ext_stats_strings[] = {
 	{"link_down_events", offsetof(struct rx_port_stats_ext,
 				link_down_events)},
@@ -288,6 +375,46 @@
 				pfc_pri7_rx_duration_us)},
 	{"pfc_pri7_rx_transitions", offsetof(struct rx_port_stats_ext,
 				pfc_pri7_rx_transitions)},
+	{"rx_bits",		offsetof(struct rx_port_stats_ext,
+				rx_bits)},
+	{"rx_buffer_passed_threshold", offsetof(struct rx_port_stats_ext,
+				rx_buffer_passed_threshold)},
+	{"rx_pcs_symbol_err",	offsetof(struct rx_port_stats_ext,
+				rx_pcs_symbol_err)},
+	{"rx_corrected_bits",	offsetof(struct rx_port_stats_ext,
+				rx_corrected_bits)},
+	{"rx_discard_bytes_cos0", offsetof(struct rx_port_stats_ext,
+				rx_discard_bytes_cos0)},
+	{"rx_discard_bytes_cos1", offsetof(struct rx_port_stats_ext,
+				rx_discard_bytes_cos1)},
+	{"rx_discard_bytes_cos2", offsetof(struct rx_port_stats_ext,
+				rx_discard_bytes_cos2)},
+	{"rx_discard_bytes_cos3", offsetof(struct rx_port_stats_ext,
+				rx_discard_bytes_cos3)},
+	{"rx_discard_bytes_cos4", offsetof(struct rx_port_stats_ext,
+				rx_discard_bytes_cos4)},
+	{"rx_discard_bytes_cos5", offsetof(struct rx_port_stats_ext,
+				rx_discard_bytes_cos5)},
+	{"rx_discard_bytes_cos6", offsetof(struct rx_port_stats_ext,
+				rx_discard_bytes_cos6)},
+	{"rx_discard_bytes_cos7", offsetof(struct rx_port_stats_ext,
+				rx_discard_bytes_cos7)},
+	{"rx_discard_packets_cos0", offsetof(struct rx_port_stats_ext,
+				rx_discard_packets_cos0)},
+	{"rx_discard_packets_cos1", offsetof(struct rx_port_stats_ext,
+				rx_discard_packets_cos1)},
+	{"rx_discard_packets_cos2", offsetof(struct rx_port_stats_ext,
+				rx_discard_packets_cos2)},
+	{"rx_discard_packets_cos3", offsetof(struct rx_port_stats_ext,
+				rx_discard_packets_cos3)},
+	{"rx_discard_packets_cos4", offsetof(struct rx_port_stats_ext,
+				rx_discard_packets_cos4)},
+	{"rx_discard_packets_cos5", offsetof(struct rx_port_stats_ext,
+				rx_discard_packets_cos5)},
+	{"rx_discard_packets_cos6", offsetof(struct rx_port_stats_ext,
+				rx_discard_packets_cos6)},
+	{"rx_discard_packets_cos7", offsetof(struct rx_port_stats_ext,
+				rx_discard_packets_cos7)},
 };
 
 static const struct bnxt_xstats_name_off bnxt_tx_ext_stats_strings[] = {
-- 
1.8.3.1


  parent reply	other threads:[~2020-04-13 16:36 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-13  8:48 [dpdk-dev] [PATCH] " Christos Ricudis
2020-04-13 16:32 ` [dpdk-dev] [PATCH v2] " Christos Ricudis
2020-04-13 16:35 ` Christos Ricudis [this message]
2020-04-17 14:47   ` Ajit Khaparde

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=1586795754-22985-1-git-send-email-ricudis@niometrics.com \
    --to=ricudis@niometrics.com \
    --cc=ajit.khaparde@broadcom.com \
    --cc=dev@dpdk.org \
    --cc=somnath.kotur@broadcom.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).