mbox series

[ethtool-next,0/7] ethtool: support FEC and standard stats

Message ID 20210420003112.3175038-1-kuba@kernel.org
Headers show
Series ethtool: support FEC and standard stats | expand

Message

Jakub Kicinski April 20, 2021, 12:31 a.m. UTC
This series adds support for FEC requests via netlink
and new "standard" stats.

Changes compared to RFC:
 - improve commit messages
 - fix Rx vs Tx histogram in JSON
 - make histograms less hardcoded to RMON
 - expand man page entry for -S a little
 - add --all-groups (last patch)

Jakub Kicinski (7):
  update UAPI header copies
  json: improve array print API
  netlink: add FEC support
  netlink: fec: support displaying statistics
  ethtool: add nlchk for redirecting to netlink
  netlink: add support for standard stats
  netlink: stats: add on --all-groups option

 Makefile.am                  |   3 +-
 ethtool.8.in                 |  23 ++-
 ethtool.c                    |  12 +-
 json_print.c                 |  20 +-
 json_print.h                 |   4 +-
 netlink/desc-ethtool.c       |  51 +++++
 netlink/extapi.h             |  13 +-
 netlink/fec.c                | 359 +++++++++++++++++++++++++++++++++++
 netlink/monitor.c            |   4 +
 netlink/netlink.c            |   9 +-
 netlink/netlink.h            |   1 +
 netlink/parser.c             |  17 +-
 netlink/parser.h             |   4 +
 netlink/stats.c              | 319 +++++++++++++++++++++++++++++++
 uapi/linux/ethtool.h         | 111 +++++++----
 uapi/linux/ethtool_netlink.h | 188 ++++++++++++++++++
 uapi/linux/if_link.h         |   9 +-
 uapi/linux/netlink.h         |   2 +-
 uapi/linux/rtnetlink.h       |  33 +++-
 19 files changed, 1119 insertions(+), 63 deletions(-)
 create mode 100644 netlink/fec.c
 create mode 100644 netlink/stats.c

Comments

Ido Schimmel April 22, 2021, 8:49 a.m. UTC | #1
On Mon, Apr 19, 2021 at 05:31:05PM -0700, Jakub Kicinski wrote:
> This series adds support for FEC requests via netlink

> and new "standard" stats.


Jakub, you wrote "ethtool-next" in subject, but I only managed to apply
the patches to the master branch.

Michal, I assume we are expected to send new features to next? If so,
can you please update the web page [1] ?

Thanks

[1] https://mirrors.edge.kernel.org/pub/software/network/ethtool/devel.html
Ido Schimmel April 22, 2021, 9:44 a.m. UTC | #2
On Mon, Apr 19, 2021 at 05:31:12PM -0700, Jakub Kicinski wrote:
> Add a switch for querying all statistic groups available

> in the kernel.

> 

> To reject --groups and --all-groups being specified

> for one request add a concept of "parameter equivalency"

> in the parser. Alternative of having a special group

> type like "--groups all" seems less clean.

> 

> Suggested-by: Ido Schimmel <idosch@nvidia.com>

> Signed-off-by: Jakub Kicinski <kuba@kernel.org>


Tested-by: Ido Schimmel <idosch@nvidia.com>


Thanks!
Jakub Kicinski April 22, 2021, 3:34 p.m. UTC | #3
On Thu, 22 Apr 2021 11:49:05 +0300 Ido Schimmel wrote:
> On Mon, Apr 19, 2021 at 05:31:05PM -0700, Jakub Kicinski wrote:

> > This series adds support for FEC requests via netlink

> > and new "standard" stats.  

> 

> Jakub, you wrote "ethtool-next" in subject, but I only managed to apply

> the patches to the master branch.


Indeed, sorry about that. Let me rebase and repost.
Thanks for testing!

> Michal, I assume we are expected to send new features to next? If so,

> can you please update the web page [1] ?

> 

> Thanks

> 

> [1] https://mirrors.edge.kernel.org/pub/software/network/ethtool/devel.html
Michal Kubecek April 22, 2021, 11:12 p.m. UTC | #4
On Thu, Apr 22, 2021 at 11:49:05AM +0300, Ido Schimmel wrote:
> On Mon, Apr 19, 2021 at 05:31:05PM -0700, Jakub Kicinski wrote:

> > This series adds support for FEC requests via netlink

> > and new "standard" stats.

> 

> Jakub, you wrote "ethtool-next" in subject, but I only managed to apply

> the patches to the master branch.


That's my fault. When I decided to skip version 5.12 because there were
only few minor commits, I should have merged next into master. I'll do
it tomorrow.

> Michal, I assume we are expected to send new features to next? If so,

> can you please update the web page [1] ?


I don't insist on the strict division between fixes and features. The
main purpose of next branch is to queue changes to be merged after the
closest release because their kernel counterpart is in net-next and is
not going to be present in the closest kernel.

On the other hand, I also plan to use it for stuff which feels too
intrusive to be merged into master shortly before a new release. Thanks
for the reminder, I'll review the web page and update the information.

Michal

> Thanks

> 

> [1] https://mirrors.edge.kernel.org/pub/software/network/ethtool/devel.html