Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package ethtool for openSUSE:Factory checked 
in at 2021-09-20 23:31:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ethtool (Old)
 and      /work/SRC/openSUSE:Factory/.ethtool.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ethtool"

Mon Sep 20 23:31:56 2021 rev:69 rq:919006 version:5.14

Changes:
--------
--- /work/SRC/openSUSE:Factory/ethtool/ethtool.changes  2021-07-16 
22:12:41.710850132 +0200
+++ /work/SRC/openSUSE:Factory/.ethtool.new.1899/ethtool.changes        
2021-09-20 23:32:12.607103673 +0200
@@ -1,0 +2,7 @@
+Sun Sep 12 21:04:47 UTC 2021 - Michal Kubecek <mkube...@suse.cz>
+
+- update to new upstream release 5.14
+  * Feature: do not silently ignore --json if unsupported
+  * Feature: support new message types in pretty print
+
+-------------------------------------------------------------------

Old:
----
  ethtool-5.13.tar.sign
  ethtool-5.13.tar.xz

New:
----
  ethtool-5.14.tar.sign
  ethtool-5.14.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ethtool.spec ++++++
--- /var/tmp/diff_new_pack.SIQnga/_old  2021-09-20 23:32:13.379104627 +0200
+++ /var/tmp/diff_new_pack.SIQnga/_new  2021-09-20 23:32:13.383104632 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           ethtool
-Version:        5.13
+Version:        5.14
 Release:        0
 Summary:        Utility for examining and tuning Ethernet-based network 
interfaces
 License:        GPL-2.0-only

++++++ ethtool-5.13.tar.xz -> ethtool-5.14.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/NEWS new/ethtool-5.14/NEWS
--- old/ethtool-5.13/NEWS       2021-07-09 00:16:22.000000000 +0200
+++ new/ethtool-5.14/NEWS       2021-09-12 22:48:28.000000000 +0200
@@ -1,3 +1,7 @@
+Version 5.14 - September 12, 2021
+       * Feature: do not silently ignore --json if unsupported
+       * Feature: support new message types in pretty print
+
 Version 5.13 - July 9, 2021
        * Feature: netlink handler for FEC (--show-fec and --set-fec)
        * Feature: FEC stats support (--show-fec)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/configure new/ethtool-5.14/configure
--- old/ethtool-5.13/configure  2021-07-09 00:46:43.000000000 +0200
+++ new/ethtool-5.14/configure  2021-09-12 22:58:12.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for ethtool 5.13.
+# Generated by GNU Autoconf 2.69 for ethtool 5.14.
 #
 # Report bugs to <net...@vger.kernel.org>.
 #
@@ -580,8 +580,8 @@
 # Identity of this package.
 PACKAGE_NAME='ethtool'
 PACKAGE_TARNAME='ethtool'
-PACKAGE_VERSION='5.13'
-PACKAGE_STRING='ethtool 5.13'
+PACKAGE_VERSION='5.14'
+PACKAGE_STRING='ethtool 5.14'
 PACKAGE_BUGREPORT='net...@vger.kernel.org'
 PACKAGE_URL=''
 
@@ -1254,7 +1254,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures ethtool 5.13 to adapt to many kinds of systems.
+\`configure' configures ethtool 5.14 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1320,7 +1320,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of ethtool 5.13:";;
+     short | recursive ) echo "Configuration of ethtool 5.14:";;
    esac
   cat <<\_ACEOF
 
@@ -1430,7 +1430,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-ethtool configure 5.13
+ethtool configure 5.14
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1677,7 +1677,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by ethtool $as_me 5.13, which was
+It was created by ethtool $as_me 5.14, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2542,7 +2542,7 @@
 
 # Define the identity of the package.
  PACKAGE='ethtool'
- VERSION='5.13'
+ VERSION='5.14'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -5122,7 +5122,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by ethtool $as_me 5.13, which was
+This file was extended by ethtool $as_me 5.14, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -5188,7 +5188,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-ethtool config.status 5.13
+ethtool config.status 5.14
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/configure.ac 
new/ethtool-5.14/configure.ac
--- old/ethtool-5.13/configure.ac       2021-07-09 00:16:22.000000000 +0200
+++ new/ethtool-5.14/configure.ac       2021-09-12 22:40:59.000000000 +0200
@@ -1,5 +1,5 @@
 dnl Process this file with autoconf to produce a configure script.
-AC_INIT(ethtool, 5.13, net...@vger.kernel.org)
+AC_INIT(ethtool, 5.14, net...@vger.kernel.org)
 AC_PREREQ(2.52)
 AC_CONFIG_SRCDIR([ethtool.c])
 AM_INIT_AUTOMAKE([gnu subdir-objects])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/ethtool.8 new/ethtool-5.14/ethtool.8
--- old/ethtool-5.13/ethtool.8  2021-07-09 00:46:44.000000000 +0200
+++ new/ethtool-5.14/ethtool.8  2021-09-12 22:58:14.000000000 +0200
@@ -117,7 +117,7 @@
 .  hy \\n(HY
 ..
 .
-.TH ETHTOOL 8 "July 2021" "Ethtool version 5.13"
+.TH ETHTOOL 8 "September 2021" "Ethtool version 5.14"
 .SH NAME
 ethtool \- query or control network driver and hardware settings
 .
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/ethtool.8.in 
new/ethtool-5.14/ethtool.8.in
--- old/ethtool-5.13/ethtool.8.in       2021-07-09 00:16:22.000000000 +0200
+++ new/ethtool-5.14/ethtool.8.in       2021-09-12 22:41:37.000000000 +0200
@@ -117,7 +117,7 @@
 .  hy \\n(HY
 ..
 .
-.TH ETHTOOL 8 "July 2021" "Ethtool version @VERSION@"
+.TH ETHTOOL 8 "September 2021" "Ethtool version @VERSION@"
 .SH NAME
 ethtool \- query or control network driver and hardware settings
 .
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/ethtool.c new/ethtool-5.14/ethtool.c
--- old/ethtool-5.13/ethtool.c  2021-07-09 00:16:22.000000000 +0200
+++ new/ethtool-5.14/ethtool.c  2021-09-12 22:37:37.000000000 +0200
@@ -2122,7 +2122,7 @@
                if (err)
                        return err;
        } else {
-               perror("Cannot get device channel parameters\n");
+               perror("Cannot get device channel parameters");
                return 1;
        }
        return 0;
@@ -4613,7 +4613,7 @@
 
        err = send_ioctl(ctx, &edata);
        if (err < 0) {
-               perror("Can not get dump level\n");
+               perror("Can not get dump level");
                return 1;
        }
        if (dump_flag != ETHTOOL_GET_DUMP_DATA) {
@@ -4623,14 +4623,14 @@
        }
        data = calloc(1, offsetof(struct ethtool_dump, data) + edata.len);
        if (!data) {
-               perror("Can not allocate enough memory\n");
+               perror("Can not allocate enough memory");
                return 1;
        }
        data->cmd = ETHTOOL_GET_DUMP_DATA;
        data->len = edata.len;
        err = send_ioctl(ctx, data);
        if (err < 0) {
-               perror("Can not get dump data\n");
+               perror("Can not get dump data");
                err = 1;
                goto free;
        }
@@ -4654,7 +4654,7 @@
        dump.flag = dump_flag;
        err = send_ioctl(ctx, &dump);
        if (err < 0) {
-               perror("Can not set dump level\n");
+               perror("Can not set dump level");
                return 1;
        }
        return 0;
@@ -5619,6 +5619,7 @@
 struct option {
        const char      *opts;
        bool            no_dev;
+       bool            json;
        int             (*func)(struct cmd_context *);
        nl_chk_t        nlchk;
        nl_func_t       nlfunc;
@@ -5628,6 +5629,13 @@
 
 static const struct option args[] = {
        {
+               /* "default" entry when no switch is used */
+               .opts   = "",
+               .func   = do_gset,
+               .nlfunc = nl_gset,
+               .help   = "Display standard information about device",
+       },
+       {
                .opts   = "-s|--change",
                .func   = do_sset,
                .nlfunc = nl_sset,
@@ -5648,6 +5656,7 @@
        },
        {
                .opts   = "-a|--show-pause",
+               .json   = true,
                .func   = do_gpause,
                .nlfunc = nl_gpause,
                .help   = "Show pause options"
@@ -5772,6 +5781,7 @@
        },
        {
                .opts   = "-S|--statistics",
+               .json   = true,
                .func   = do_gnicstats,
                .nlchk  = nl_gstats_chk,
                .nlfunc = nl_gstats,
@@ -5983,6 +5993,7 @@
        },
        {
                .opts   = "--show-fec",
+               .json   = true,
                .func   = do_gfec,
                .nlfunc = nl_gfec,
                .help   = "Show FEC settings",
@@ -6003,11 +6014,13 @@
        },
        {
                .opts   = "--cable-test",
+               .json   = true,
                .nlfunc = nl_cable_test,
                .help   = "Perform a cable test",
        },
        {
                .opts   = "--cable-test-tdr",
+               .json   = true,
                .nlfunc = nl_cable_test_tdr,
                .help   = "Print cable test time domain reflectrometery data",
                .xhelp  = "             [ first N ]\n"
@@ -6041,10 +6054,7 @@
 
        /* ethtool -h */
        fprintf(stdout, PACKAGE " version " VERSION "\n");
-       fprintf(stdout,
-               "Usage:\n"
-               "        ethtool [ FLAGS ] DEVNAME\t"
-               "Display standard information about device\n");
+       fprintf(stdout, "Usage:\n");
        for (i = 0; args[i].opts; i++) {
                fputs("        ethtool [ FLAGS ] ", stdout);
                fprintf(stdout, "%s %s\t%s\n",
@@ -6070,7 +6080,7 @@
        size_t len;
        int k;
 
-       for (k = 0; args[k].opts; k++) {
+       for (k = 1; args[k].opts; k++) {
                opt = args[k].opts;
                for (;;) {
                        len = strcspn(opt, "|");
@@ -6287,11 +6297,7 @@
 
 int main(int argc, char **argp)
 {
-       int (*func)(struct cmd_context *);
        struct cmd_context ctx = {};
-       nl_func_t nlfunc = NULL;
-       nl_chk_t nlchk = NULL;
-       bool no_dev;
        int ret;
        int k;
 
@@ -6345,36 +6351,34 @@
                exit_bad_args();
 
        k = find_option(*argp);
-       if (k >= 0) {
+       if (k > 0) {
                argp++;
                argc--;
-               func = args[k].func;
-               nlfunc = args[k].nlfunc;
-               nlchk = args[k].nlchk;
-               no_dev = args[k].no_dev;
-               goto opt_found;
+       } else {
+               if ((*argp)[0] == '-')
+                       exit_bad_args();
+               k = 0;
        }
-       if ((*argp)[0] == '-')
-               exit_bad_args();
-       nlfunc = nl_gset;
-       func = do_gset;
-       no_dev = false;
 
-opt_found:
-       if (!no_dev) {
+       if (!args[k].no_dev) {
                ctx.devname = *argp++;
                argc--;
 
                if (!ctx.devname)
                        exit_bad_args();
        }
+       if (ctx.json && !args[k].json)
+               exit_bad_args();
        ctx.argc = argc;
        ctx.argp = argp;
-       netlink_run_handler(&ctx, nlchk, nlfunc, !func);
+       netlink_run_handler(&ctx, args[k].nlchk, args[k].nlfunc, !args[k].func);
+
+       if (ctx.json) /* no IOCTL command supports JSON output */
+               exit_bad_args();
 
-       ret = ioctl_init(&ctx, no_dev);
+       ret = ioctl_init(&ctx, args[k].no_dev);
        if (ret)
                return ret;
 
-       return func(&ctx);
+       return args[k].func(&ctx);
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/ethtool.spec 
new/ethtool-5.14/ethtool.spec
--- old/ethtool-5.13/ethtool.spec       2021-07-09 00:46:45.000000000 +0200
+++ new/ethtool-5.14/ethtool.spec       2021-09-12 22:58:14.000000000 +0200
@@ -1,5 +1,5 @@
 Name           : ethtool
-Version                : 5.13
+Version                : 5.14
 Release                : 1
 Group          : Utilities
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/netlink/desc-ethtool.c 
new/ethtool-5.14/netlink/desc-ethtool.c
--- old/ethtool-5.13/netlink/desc-ethtool.c     2021-07-09 00:16:22.000000000 
+0200
+++ new/ethtool-5.14/netlink/desc-ethtool.c     2021-09-12 22:37:37.000000000 
+0200
@@ -318,12 +318,32 @@
        NLATTR_DESC_NESTED(ETHTOOL_A_TUNNEL_INFO_UDP_PORTS, tunnel_udp),
 };
 
+const struct pretty_nla_desc __fec_stats_desc[] = {
+       NLATTR_DESC_INVALID(ETHTOOL_A_FEC_STAT_UNSPEC),
+       NLATTR_DESC_BINARY(ETHTOOL_A_FEC_STAT_PAD),
+       NLATTR_DESC_U64(ETHTOOL_A_FEC_STAT_CORRECTED),
+       NLATTR_DESC_U64(ETHTOOL_A_FEC_STAT_UNCORR),
+       NLATTR_DESC_U64(ETHTOOL_A_FEC_STAT_CORR_BITS),
+};
+
 static const struct pretty_nla_desc __fec_desc[] = {
        NLATTR_DESC_INVALID(ETHTOOL_A_FEC_UNSPEC),
        NLATTR_DESC_NESTED(ETHTOOL_A_FEC_HEADER, header),
        NLATTR_DESC_NESTED(ETHTOOL_A_FEC_MODES, bitset),
        NLATTR_DESC_BOOL(ETHTOOL_A_FEC_AUTO),
        NLATTR_DESC_U32(ETHTOOL_A_FEC_ACTIVE),
+       NLATTR_DESC_NESTED(ETHTOOL_A_FEC_STATS, fec_stats),
+};
+
+const struct pretty_nla_desc __module_eeprom_desc[] = {
+       NLATTR_DESC_INVALID(ETHTOOL_A_MODULE_EEPROM_UNSPEC),
+       NLATTR_DESC_NESTED(ETHTOOL_A_MODULE_EEPROM_HEADER, header),
+       NLATTR_DESC_U32(ETHTOOL_A_MODULE_EEPROM_OFFSET),
+       NLATTR_DESC_U32(ETHTOOL_A_MODULE_EEPROM_LENGTH),
+       NLATTR_DESC_U8(ETHTOOL_A_MODULE_EEPROM_PAGE),
+       NLATTR_DESC_U8(ETHTOOL_A_MODULE_EEPROM_BANK),
+       NLATTR_DESC_U8(ETHTOOL_A_MODULE_EEPROM_I2C_ADDRESS),
+       NLATTR_DESC_BINARY(ETHTOOL_A_MODULE_EEPROM_DATA)
 };
 
 static const struct pretty_nla_desc __stats_grp_stat_desc[] = {
@@ -363,15 +383,11 @@
        NLATTR_DESC_NESTED(ETHTOOL_A_STATS_GRP, stats_grp),
 };
 
-const struct pretty_nla_desc __module_eeprom_desc[] = {
-       NLATTR_DESC_INVALID(ETHTOOL_A_MODULE_EEPROM_UNSPEC),
-       NLATTR_DESC_NESTED(ETHTOOL_A_MODULE_EEPROM_HEADER, header),
-       NLATTR_DESC_U32(ETHTOOL_A_MODULE_EEPROM_OFFSET),
-       NLATTR_DESC_U32(ETHTOOL_A_MODULE_EEPROM_LENGTH),
-       NLATTR_DESC_U8(ETHTOOL_A_MODULE_EEPROM_PAGE),
-       NLATTR_DESC_U8(ETHTOOL_A_MODULE_EEPROM_BANK),
-       NLATTR_DESC_U8(ETHTOOL_A_MODULE_EEPROM_I2C_ADDRESS),
-       NLATTR_DESC_BINARY(ETHTOOL_A_MODULE_EEPROM_DATA)
+static const struct pretty_nla_desc __phc_vclocks_desc[] = {
+       NLATTR_DESC_INVALID(ETHTOOL_A_PHC_VCLOCKS_UNSPEC),
+       NLATTR_DESC_NESTED(ETHTOOL_A_PHC_VCLOCKS_HEADER, header),
+       NLATTR_DESC_U32(ETHTOOL_A_PHC_VCLOCKS_NUM),
+       NLATTR_DESC_BINARY(ETHTOOL_A_PHC_VCLOCKS_INDEX),
 };
 
 const struct pretty_nlmsg_desc ethnl_umsg_desc[] = {
@@ -406,8 +422,9 @@
        NLMSG_DESC(ETHTOOL_MSG_TUNNEL_INFO_GET, tunnel_info),
        NLMSG_DESC(ETHTOOL_MSG_FEC_GET, fec),
        NLMSG_DESC(ETHTOOL_MSG_FEC_SET, fec),
-       NLMSG_DESC(ETHTOOL_MSG_STATS_GET, stats),
        NLMSG_DESC(ETHTOOL_MSG_MODULE_EEPROM_GET, module_eeprom),
+       NLMSG_DESC(ETHTOOL_MSG_STATS_GET, stats),
+       NLMSG_DESC(ETHTOOL_MSG_PHC_VCLOCKS_GET, phc_vclocks),
 };
 
 const unsigned int ethnl_umsg_n_desc = ARRAY_SIZE(ethnl_umsg_desc);
@@ -445,8 +462,9 @@
        NLMSG_DESC(ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY, tunnel_info),
        NLMSG_DESC(ETHTOOL_MSG_FEC_GET_REPLY, fec),
        NLMSG_DESC(ETHTOOL_MSG_FEC_NTF, fec),
-       NLMSG_DESC(ETHTOOL_MSG_STATS_GET_REPLY, stats),
        NLMSG_DESC(ETHTOOL_MSG_MODULE_EEPROM_GET_REPLY, module_eeprom),
+       NLMSG_DESC(ETHTOOL_MSG_STATS_GET_REPLY, stats),
+       NLMSG_DESC(ETHTOOL_MSG_PHC_VCLOCKS_GET_REPLY, phc_vclocks),
 };
 
 const unsigned int ethnl_kmsg_n_desc = ARRAY_SIZE(ethnl_kmsg_desc);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/uapi/linux/ethtool.h 
new/ethtool-5.14/uapi/linux/ethtool.h
--- old/ethtool-5.13/uapi/linux/ethtool.h       2021-05-20 17:28:18.000000000 
+0200
+++ new/ethtool-5.14/uapi/linux/ethtool.h       2021-09-12 22:37:52.000000000 
+0200
@@ -231,7 +231,7 @@
        ETHTOOL_PFC_PREVENTION_TOUT, /* timeout in msecs */
        /*
         * Add your fresh new tunable attribute above and remember to update
-        * tunable_strings[] in net/core/ethtool.c
+        * tunable_strings[] in net/ethtool/common.c
         */
        __ETHTOOL_TUNABLE_COUNT,
 };
@@ -295,7 +295,7 @@
        ETHTOOL_PHY_EDPD,
        /*
         * Add your fresh new phy tunable attribute above and remember to update
-        * phy_tunable_strings[] in net/core/ethtool.c
+        * phy_tunable_strings[] in net/ethtool/common.c
         */
        __ETHTOOL_PHY_TUNABLE_COUNT,
 };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/uapi/linux/ethtool_netlink.h 
new/ethtool-5.14/uapi/linux/ethtool_netlink.h
--- old/ethtool-5.13/uapi/linux/ethtool_netlink.h       2021-05-20 
17:28:18.000000000 +0200
+++ new/ethtool-5.14/uapi/linux/ethtool_netlink.h       2021-09-12 
22:37:52.000000000 +0200
@@ -46,6 +46,7 @@
        ETHTOOL_MSG_FEC_SET,
        ETHTOOL_MSG_MODULE_EEPROM_GET,
        ETHTOOL_MSG_STATS_GET,
+       ETHTOOL_MSG_PHC_VCLOCKS_GET,
 
        /* add new constants above here */
        __ETHTOOL_MSG_USER_CNT,
@@ -88,6 +89,7 @@
        ETHTOOL_MSG_FEC_NTF,
        ETHTOOL_MSG_MODULE_EEPROM_GET_REPLY,
        ETHTOOL_MSG_STATS_GET_REPLY,
+       ETHTOOL_MSG_PHC_VCLOCKS_GET_REPLY,
 
        /* add new constants above here */
        __ETHTOOL_MSG_KERNEL_CNT,
@@ -440,6 +442,19 @@
        ETHTOOL_A_TSINFO_MAX = (__ETHTOOL_A_TSINFO_CNT - 1)
 };
 
+/* PHC VCLOCKS */
+
+enum {
+       ETHTOOL_A_PHC_VCLOCKS_UNSPEC,
+       ETHTOOL_A_PHC_VCLOCKS_HEADER,                   /* nest - _A_HEADER_* */
+       ETHTOOL_A_PHC_VCLOCKS_NUM,                      /* u32 */
+       ETHTOOL_A_PHC_VCLOCKS_INDEX,                    /* array, s32 */
+
+       /* add new constants above here */
+       __ETHTOOL_A_PHC_VCLOCKS_CNT,
+       ETHTOOL_A_PHC_VCLOCKS_MAX = (__ETHTOOL_A_PHC_VCLOCKS_CNT - 1)
+};
+
 /* CABLE TEST */
 
 enum {
@@ -675,7 +690,7 @@
        ETHTOOL_A_MODULE_EEPROM_PAGE,                   /* u8 */
        ETHTOOL_A_MODULE_EEPROM_BANK,                   /* u8 */
        ETHTOOL_A_MODULE_EEPROM_I2C_ADDRESS,            /* u8 */
-       ETHTOOL_A_MODULE_EEPROM_DATA,                   /* nested */
+       ETHTOOL_A_MODULE_EEPROM_DATA,                   /* binary */
 
        __ETHTOOL_A_MODULE_EEPROM_CNT,
        ETHTOOL_A_MODULE_EEPROM_MAX = (__ETHTOOL_A_MODULE_EEPROM_CNT - 1)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/uapi/linux/if_link.h 
new/ethtool-5.14/uapi/linux/if_link.h
--- old/ethtool-5.13/uapi/linux/if_link.h       2021-05-20 17:28:18.000000000 
+0200
+++ new/ethtool-5.14/uapi/linux/if_link.h       2021-09-12 22:37:52.000000000 
+0200
@@ -341,6 +341,13 @@
        IFLA_ALT_IFNAME, /* Alternative ifname */
        IFLA_PERM_ADDRESS,
        IFLA_PROTO_DOWN_REASON,
+
+       /* device (sysfs) name as parent, used instead
+        * of IFLA_LINK where there's no parent netdev
+        */
+       IFLA_PARENT_DEV_NAME,
+       IFLA_PARENT_DEV_BUS_NAME,
+
        __IFLA_MAX
 };
 
@@ -1234,6 +1241,8 @@
 #define RMNET_FLAGS_INGRESS_MAP_COMMANDS          (1U << 1)
 #define RMNET_FLAGS_INGRESS_MAP_CKSUMV4           (1U << 2)
 #define RMNET_FLAGS_EGRESS_MAP_CKSUMV4            (1U << 3)
+#define RMNET_FLAGS_INGRESS_MAP_CKSUMV5           (1U << 4)
+#define RMNET_FLAGS_EGRESS_MAP_CKSUMV5            (1U << 5)
 
 enum {
        IFLA_RMNET_UNSPEC,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/uapi/linux/net_tstamp.h 
new/ethtool-5.14/uapi/linux/net_tstamp.h
--- old/ethtool-5.13/uapi/linux/net_tstamp.h    2021-05-20 16:46:41.000000000 
+0200
+++ new/ethtool-5.14/uapi/linux/net_tstamp.h    2021-09-12 22:37:52.000000000 
+0200
@@ -13,7 +13,7 @@
 #include <linux/types.h>
 #include <linux/socket.h>   /* for SO_TIMESTAMPING */
 
-/* SO_TIMESTAMPING gets an integer bit field comprised of these values */
+/* SO_TIMESTAMPING flags */
 enum {
        SOF_TIMESTAMPING_TX_HARDWARE = (1<<0),
        SOF_TIMESTAMPING_TX_SOFTWARE = (1<<1),
@@ -30,8 +30,9 @@
        SOF_TIMESTAMPING_OPT_STATS = (1<<12),
        SOF_TIMESTAMPING_OPT_PKTINFO = (1<<13),
        SOF_TIMESTAMPING_OPT_TX_SWHW = (1<<14),
+       SOF_TIMESTAMPING_BIND_PHC = (1 << 15),
 
-       SOF_TIMESTAMPING_LAST = SOF_TIMESTAMPING_OPT_TX_SWHW,
+       SOF_TIMESTAMPING_LAST = SOF_TIMESTAMPING_BIND_PHC,
        SOF_TIMESTAMPING_MASK = (SOF_TIMESTAMPING_LAST - 1) |
                                 SOF_TIMESTAMPING_LAST
 };
@@ -47,6 +48,18 @@
                                         SOF_TIMESTAMPING_TX_ACK)
 
 /**
+ * struct so_timestamping - SO_TIMESTAMPING parameter
+ *
+ * @flags:     SO_TIMESTAMPING flags
+ * @bind_phc:  Index of PTP virtual clock bound to sock. This is available
+ *             if flag SOF_TIMESTAMPING_BIND_PHC is set.
+ */
+struct so_timestamping {
+       int flags;
+       int bind_phc;
+};
+
+/**
  * struct hwtstamp_config - %SIOCGHWTSTAMP and %SIOCSHWTSTAMP parameter
  *
  * @flags:     no flags defined right now, must be zero for %SIOCSHWTSTAMP
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ethtool-5.13/uapi/linux/netlink.h 
new/ethtool-5.14/uapi/linux/netlink.h
--- old/ethtool-5.13/uapi/linux/netlink.h       2021-05-20 16:46:41.000000000 
+0200
+++ new/ethtool-5.14/uapi/linux/netlink.h       2021-09-12 22:37:52.000000000 
+0200
@@ -91,9 +91,10 @@
 #define NLMSG_HDRLEN    ((int) NLMSG_ALIGN(sizeof(struct nlmsghdr)))
 #define NLMSG_LENGTH(len) ((len) + NLMSG_HDRLEN)
 #define NLMSG_SPACE(len) NLMSG_ALIGN(NLMSG_LENGTH(len))
-#define NLMSG_DATA(nlh)  ((void*)(((char*)nlh) + NLMSG_LENGTH(0)))
+#define NLMSG_DATA(nlh)  ((void *)(((char *)nlh) + NLMSG_HDRLEN))
 #define NLMSG_NEXT(nlh,len)     ((len) -= NLMSG_ALIGN((nlh)->nlmsg_len), \
-                                 (struct nlmsghdr*)(((char*)(nlh)) + 
NLMSG_ALIGN((nlh)->nlmsg_len)))
+                                 (struct nlmsghdr *)(((char *)(nlh)) + \
+                                 NLMSG_ALIGN((nlh)->nlmsg_len)))
 #define NLMSG_OK(nlh,len) ((len) >= (int)sizeof(struct nlmsghdr) && \
                           (nlh)->nlmsg_len >= sizeof(struct nlmsghdr) && \
                           (nlh)->nlmsg_len <= (len))

Reply via email to