Re: [PATCH net-next v2 0/6] ethtool: add standard FEC statistics
From: huangguangbin (A) <hidden>
Date: 2021-05-18 06:48:18
On 2021/4/16 6:53, Jakub Kicinski wrote:
This set adds uAPI for reporting standard FEC statistics, and
implements it in a handful of drivers.
The statistics are taken from the IEEE standard, with one
extra seemingly popular but not standard statistics added.
The implementation is similar to that of the pause frame
statistics, user requests the stats by setting a bit
(ETHTOOL_FLAG_STATS) in the common ethtool header of
ETHTOOL_MSG_FEC_GET.
Since standard defines the statistics per lane what's
reported is both total and per-lane counters:
# ethtool -I --show-fec eth0
FEC parameters for eth0:
Configured FEC encodings: None
Active FEC encoding: None
Statistics:
corrected_blocks: 256
Lane 0: 255
Lane 1: 1
uncorrectable_blocks: 145
Lane 0: 128
Lane 1: 17Hi, I have a doubt that why active FEC encoding is None here? Should it actually be BaseR or RS if FEC statistics are reported?
v2: check for errors in mlx5 register access Jakub Kicinski (6): ethtool: move ethtool_stats_init ethtool: fec_prepare_data() - jump to error handling ethtool: add FEC statistics bnxt: implement ethtool::get_fec_stats sfc: ef10: implement ethtool::get_fec_stats mlx5: implement ethtool::get_fec_stats Documentation/networking/ethtool-netlink.rst | 21 +++++ Documentation/networking/statistics.rst | 2 + .../net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 15 ++++ .../ethernet/mellanox/mlx5/core/en_ethtool.c | 9 +++ .../ethernet/mellanox/mlx5/core/en_stats.c | 29 ++++++- .../ethernet/mellanox/mlx5/core/en_stats.h | 2 + drivers/net/ethernet/sfc/ef10.c | 17 ++++ drivers/net/ethernet/sfc/ethtool.c | 10 +++ drivers/net/ethernet/sfc/net_driver.h | 3 + include/linux/ethtool.h | 46 +++++++++++ include/uapi/linux/ethtool_netlink.h | 14 ++++ net/ethtool/fec.c | 80 ++++++++++++++++++- net/ethtool/pause.c | 6 -- 13 files changed, 242 insertions(+), 12 deletions(-)