From: sashiko-bot@kernel.org
To: "Wei Fang" <wei.fang@nxp.com>
Cc: devicetree@vger.kernel.org, robh@kernel.org, imx@lists.linux.dev,
conor+dt@kernel.org, krzk+dt@kernel.org, Frank.Li@kernel.org
Subject: Re: [PATCH v6 net-next 15/15] net: dsa: netc: add support for ethtool private statistics
Date: Sun, 10 May 2026 10:48:40 +0000 [thread overview]
Message-ID: <20260510104841.11938C2BCB8@smtp.kernel.org> (raw)
In-Reply-To: <20260509102954.4116624-16-wei.fang@nxp.com>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] The patch duplicates standard network statistics into the private ethtool (-S) interface.
--
commit 66f17e671c095a381aeff77d1d8c0cae1e43722c
Author: Wei Fang <wei.fang@nxp.com>
net: dsa: netc: add support for ethtool private statistics
Implement the ethtool private statistics interface to expose additional
port-level and MAC-level counters that are not covered by the standard
IEEE 802.3 statistics. The pMAC counters are only reported when the port
supports Frame Preemption (802.1Qbu/802.3br).
> diff --git a/drivers/net/dsa/netc/netc_ethtool.c b/drivers/net/dsa/netc/netc_ethtool.c
> index ac8940b5a85c6..8d04db534347c 100644
> --- a/drivers/net/dsa/netc/netc_ethtool.c
> +++ b/drivers/net/dsa/netc/netc_ethtool.c
> @@ -19,6 +19,56 @@ static const struct ethtool_rmon_hist_range netc_rmon_ranges[] = {
> { }
> };
>
> +static const struct netc_port_stat netc_port_counters[] = {
> + { NETC_PTGSLACR, "port gate late arrival frames" },
> + { NETC_PSDFTCR, "port SDF transmit frames" },
> + { NETC_PSDFDDCR, "port SDF drop duplicate frames" },
> + { NETC_PRXDCR, "port rx discard frames" },
> + { NETC_PRXDCRRR, "port rx discard read-reset" },
> + { NETC_PRXDCRR0, "port rx discard reason 0" },
> + { NETC_PRXDCRR1, "port rx discard reason 1" },
> + { NETC_PTXDCR, "port tx discard frames" },
> + { NETC_PTXDCRRR, "port tx discard read-reset" },
> + { NETC_PTXDCRR0, "port tx discard reason 0" },
> + { NETC_PTXDCRR1, "port tx discard reason 1" },
> + { NETC_BPDCR, "bridge port discard frames" },
> + { NETC_BPDCRRR, "bridge port discard read-reset" },
> + { NETC_BPDCRR0, "bridge port discard reason 0" },
> + { NETC_BPDCRR1, "bridge port discard reason 1" },
> +};
> +
> +static const struct netc_port_stat netc_emac_counters[] = {
> + { NETC_PM_ROCT(0), "eMAC rx octets" },
> + { NETC_PM_RVLAN(0), "eMAC rx VLAN frames" },
> + { NETC_PM_RERR(0), "eMAC rx frame errors" },
> + { NETC_PM_RUCA(0), "eMAC rx unicast frames" },
> + { NETC_PM_RDRP(0), "eMAC rx dropped packets" },
> + { NETC_PM_RPKT(0), "eMAC rx packets" },
> + { NETC_PM_TOCT(0), "eMAC tx octets" },
> + { NETC_PM_TVLAN(0), "eMAC tx VLAN frames" },
> + { NETC_PM_TFCS(0), "eMAC tx FCS errors" },
> + { NETC_PM_TUCA(0), "eMAC tx unicast frames" },
> + { NETC_PM_TPKT(0), "eMAC tx packets" },
> + { NETC_PM_TUND(0), "eMAC tx undersized packets" },
> + { NETC_PM_TIOCT(0), "eMAC tx invalid octets" },
> +};
> +
> +static const struct netc_port_stat netc_pmac_counters[] = {
> + { NETC_PM_ROCT(1), "pMAC rx octets" },
> + { NETC_PM_RVLAN(1), "pMAC rx VLAN frames" },
> + { NETC_PM_RERR(1), "pMAC rx frame errors" },
> + { NETC_PM_RUCA(1), "pMAC rx unicast frames" },
> + { NETC_PM_RDRP(1), "pMAC rx dropped packets" },
> + { NETC_PM_RPKT(1), "pMAC rx packets" },
> + { NETC_PM_TOCT(1), "pMAC tx octets" },
> + { NETC_PM_TVLAN(1), "pMAC tx VLAN frames" },
> + { NETC_PM_TFCS(1), "pMAC tx FCS errors" },
> + { NETC_PM_TUCA(1), "pMAC tx unicast frames" },
> + { NETC_PM_TPKT(1), "pMAC tx packets" },
> + { NETC_PM_TUND(1), "pMAC tx undersized packets" },
> + { NETC_PM_TIOCT(1), "pMAC tx invalid octets" },
> +};
Should these standard MAC statistics be exposed as private ethtool strings?
Many of the counters defined in netc_emac_counters and netc_pmac_counters,
such as rx octets, rx packets, rx dropped packets, and tx FCS errors,
appear to correspond directly to existing standard uAPIs like
struct rtnl_link_stats64 or struct ethtool_eth_mac_stats.
Since the driver already implements netc_port_get_eth_mac_stats(), which
supports both eMAC and pMAC sources, could these standard counters be
reported through the standard interfaces instead to avoid duplicating
them in ethtool -S?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260509102954.4116624-1-wei.fang@nxp.com?part=15
next prev parent reply other threads:[~2026-05-10 10:48 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-09 10:29 [PATCH v6 net-next 00/15] Add preliminary NETC switch support for i.MX94 Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 01/15] dt-bindings: net: dsa: update the description of 'dsa,member' property Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 02/15] dt-bindings: net: dsa: add NETC switch Wei Fang
2026-05-10 10:48 ` sashiko-bot
2026-05-11 3:33 ` Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 03/15] net: enetc: add pre-boot initialization for i.MX94 switch Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 04/15] net: enetc: add basic operations to the FDB table Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 05/15] net: enetc: add support for the "Add" operation to VLAN filter table Wei Fang
2026-05-10 10:48 ` sashiko-bot
2026-05-11 2:05 ` Wei Fang
2026-05-11 2:21 ` Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 06/15] net: enetc: add support for the "Update" operation to buffer pool table Wei Fang
2026-05-10 10:48 ` sashiko-bot
2026-05-11 2:01 ` Wei Fang
2026-05-11 2:22 ` Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 07/15] net: enetc: add support for "Add" and "Delete" operations to IPFT Wei Fang
2026-05-10 10:48 ` sashiko-bot
2026-05-11 2:11 ` Wei Fang
2026-05-11 2:21 ` Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 08/15] net: enetc: add multiple command BD rings support Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 09/15] net: dsa: add NETC switch tag support Wei Fang
2026-05-10 10:48 ` sashiko-bot
2026-05-11 2:18 ` Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 10/15] net: dsa: netc: introduce NXP NETC switch driver for i.MX94 Wei Fang
2026-05-10 10:48 ` sashiko-bot
2026-05-11 7:17 ` Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 11/15] net: dsa: netc: add phylink MAC operations Wei Fang
2026-05-10 10:48 ` sashiko-bot
2026-05-11 2:17 ` Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 12/15] net: dsa: netc: add FDB, STP, MTU, port setup and host flooding support Wei Fang
2026-05-10 10:48 ` sashiko-bot
2026-05-11 3:14 ` Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 13/15] net: dsa: netc: initialize buffer pool table and implement flow-control Wei Fang
2026-05-10 10:48 ` sashiko-bot
2026-05-11 3:16 ` Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 14/15] net: dsa: netc: add support for the standardized counters Wei Fang
2026-05-10 10:48 ` sashiko-bot
2026-05-11 3:24 ` Wei Fang
2026-05-09 10:29 ` [PATCH v6 net-next 15/15] net: dsa: netc: add support for ethtool private statistics Wei Fang
2026-05-10 10:48 ` sashiko-bot [this message]
2026-05-11 3:26 ` Wei Fang
2026-05-12 6:00 ` Wei Fang
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=20260510104841.11938C2BCB8@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=Frank.Li@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=imx@lists.linux.dev \
--cc=krzk+dt@kernel.org \
--cc=robh@kernel.org \
--cc=sashiko@lists.linux.dev \
--cc=wei.fang@nxp.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.