[PATCH net-next v3 00/12] ethtool netlink interface, part 4

From: Michal Kubecek
Date: Fri Mar 27 2020 - 19:01:05 EST


Implementation of more netlink request types:

- coalescing (ethtool -c/-C, patches 2-4)
- pause parameters (ethtool -a/-A, patches 5-7)
- EEE settings (--show-eee / --set-eee, patches 8-10)
- timestamping info (-T, patches 11-12)

Patch 1 is a fix for netdev reference leak similar to commit 2f599ec422ad
("ethtool: fix reference leak in some *_SET handlers") but fixing a code

Changes in v3
- change "one-step-*" Tx type names to "onestep-*", (patch 11, suggested
by Richard Cochran
- use "TSINFO" rather than "TIMESTAMP" for timestamping information
constants and adjust symbol names (patch 12, suggested by Richard
Cochran)

Changes in v2:
- fix compiler warning in net_hwtstamp_validate() (patch 11)
- fix follow-up lines alignment (whitespace only, patches 3 and 8)
which is only in net-next tree at the moment.

Michal Kubecek (12):
ethtool: fix reference leak in ethnl_set_privflags()
ethtool: provide coalescing parameters with COALESCE_GET request
ethtool: set coalescing parameters with COALESCE_SET request
ethtool: add COALESCE_NTF notification
ethtool: provide pause parameters with PAUSE_GET request
ethtool: set pause parameters with PAUSE_SET request
ethtool: add PAUSE_NTF notification
ethtool: provide EEE settings with EEE_GET request
ethtool: set EEE settings with EEE_SET request
ethtool: add EEE_NTF notification
ethtool: add timestamping related string sets
ethtool: provide timestamping information with TSINFO_GET request

Documentation/networking/ethtool-netlink.rst | 225 +++++++++++-
include/uapi/linux/ethtool.h | 6 +
include/uapi/linux/ethtool_netlink.h | 93 +++++
include/uapi/linux/net_tstamp.h | 6 +
net/core/dev_ioctl.c | 6 +
net/ethtool/Makefile | 2 +-
net/ethtool/coalesce.c | 353 +++++++++++++++++++
net/ethtool/common.c | 70 ++++
net/ethtool/common.h | 6 +
net/ethtool/eee.c | 206 +++++++++++
net/ethtool/ioctl.c | 41 +--
net/ethtool/netlink.c | 53 +++
net/ethtool/netlink.h | 7 +
net/ethtool/pause.c | 145 ++++++++
net/ethtool/privflags.c | 4 +-
net/ethtool/strset.c | 15 +
net/ethtool/tsinfo.c | 143 ++++++++
17 files changed, 1350 insertions(+), 31 deletions(-)
create mode 100644 net/ethtool/coalesce.c
create mode 100644 net/ethtool/eee.c
create mode 100644 net/ethtool/pause.c
create mode 100644 net/ethtool/tsinfo.c

--
2.25.1