aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorPiotr Pietruszewski <piotr.pietruszewski@intel.com>2021-03-03 01:21:58 +0000
committerEric Joyner <erj@FreeBSD.org>2021-03-03 01:25:32 +0000
commitafb1aa4e6df245d38fd2ba683fa521d5dabe8392 (patch)
treea7fcb37bdd10d79f6cf196a9bbe069721d66c4ae /sys
parentcaed7b1c399de04279822028e15b36367e84232f (diff)
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/ixgbe/if_ix.c19
-rw-r--r--sys/dev/ixgbe/ixgbe.h12
2 files changed, 30 insertions, 1 deletions
diff --git a/sys/dev/ixgbe/if_ix.c b/sys/dev/ixgbe/if_ix.c
index 7eb32077f8b0..9f3674cdab5d 100644
--- a/sys/dev/ixgbe/if_ix.c
+++ b/sys/dev/ixgbe/if_ix.c
@@ -1531,7 +1531,22 @@ ixgbe_update_stats_counters(struct adapter *adapter)
IXGBE_SET_OMCASTS(adapter, stats->mptc);
IXGBE_SET_COLLISIONS(adapter, 0);
IXGBE_SET_IQDROPS(adapter, total_missed_rx);
- IXGBE_SET_IERRORS(adapter, stats->crcerrs + stats->rlec);
+
+ /*
+ * Aggregate following types of errors as RX errors:
+ * - CRC error count,
+ * - illegal byte error count,
+ * - checksum error count,
+ * - missed packets count,
+ * - length error count,
+ * - undersized packets count,
+ * - fragmented packets count,
+ * - oversized packets count,
+ * - jabber count.
+ */
+ IXGBE_SET_IERRORS(adapter, stats->crcerrs + stats->illerrc + stats->xec +
+ stats->mpc[0] + stats->rlec + stats->ruc + stats->rfc + stats->roc +
+ stats->rjc);
} /* ixgbe_update_stats_counters */
/************************************************************************
@@ -1621,6 +1636,8 @@ ixgbe_add_hw_stats(struct adapter *adapter)
CTLFLAG_RD | CTLFLAG_MPSAFE, NULL, "MAC Statistics");
stat_list = SYSCTL_CHILDREN(stat_node);
+ SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "rx_errs",
+ CTLFLAG_RD, &adapter->ierrors, IXGBE_SYSCTL_DESC_RX_ERRS);
SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "crc_errs",
CTLFLAG_RD, &stats->crcerrs, "CRC Errors");
SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, "ill_errs",
diff --git a/sys/dev/ixgbe/ixgbe.h b/sys/dev/ixgbe/ixgbe.h
index 1502c7fb866e..30dd1d5368fb 100644
--- a/sys/dev/ixgbe/ixgbe.h
+++ b/sys/dev/ixgbe/ixgbe.h
@@ -536,6 +536,18 @@ struct adapter {
"\t2 - tx pause\n" \
"\t3 - tx and rx pause"
+#define IXGBE_SYSCTL_DESC_RX_ERRS \
+ "\nSum of the following RX errors counters:\n" \
+ " * CRC errors,\n" \
+ " * illegal byte error count,\n" \
+ " * checksum error count,\n" \
+ " * missed packet count,\n" \
+ " * length error count,\n" \
+ " * undersized packets count,\n" \
+ " * fragmented packets count,\n" \
+ " * oversized packets count,\n" \
+ " * jabber count."
+
/* Workaround to make 8.0 buildable */
#if __FreeBSD_version >= 800000 && __FreeBSD_version < 800504
static __inline int