diff --git a/.ethtool.metadata b/.ethtool.metadata index bd393ba..9ac880d 100644 --- a/.ethtool.metadata +++ b/.ethtool.metadata @@ -1 +1 @@ -9ab8a1b10bfd719220a9bc7903b850ff6154fd8f SOURCES/ethtool-4.16.tar.xz +a7149633abb2556ba48e87a2989a5e1a394256b4 SOURCES/ethtool-5.0.tar.xz diff --git a/.gitignore b/.gitignore index 46a8d9a..adeaeb9 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/ethtool-4.16.tar.xz +SOURCES/ethtool-5.0.tar.xz diff --git a/SOURCES/0001-ethtool-Add-support-for-200Gbps-50Gbps-per-lane-link.patch b/SOURCES/0001-ethtool-Add-support-for-200Gbps-50Gbps-per-lane-link.patch new file mode 100644 index 0000000..4479bd2 --- /dev/null +++ b/SOURCES/0001-ethtool-Add-support-for-200Gbps-50Gbps-per-lane-link.patch @@ -0,0 +1,162 @@ +From b13bc90142533a7cfe79d1f136a24ed20a75c1fb Mon Sep 17 00:00:00 2001 +From: Aya Levin +Date: Mon, 25 Feb 2019 17:44:34 +0200 +Subject: [PATCH] ethtool: Add support for 200Gbps (50Gbps per lane) link mode + +Introduce 50Gbps per lane link modes and 200Gbps speed, update print +functions and initialization functions accordingly. +In addition, update related man page accordingly. + +Signed-off-by: Aya Levin +Signed-off-by: Tariq Toukan +Reviewed-by: Michal Kubecek +Signed-off-by: John W. Linville +(cherry picked from commit caa4bbef6ff920a0ff1d94c5bff7f2c7c875fca3) +--- + ethtool-copy.h | 18 +++++++++++++++++- + ethtool.8.in | 15 +++++++++++++++ + ethtool.c | 45 +++++++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 77 insertions(+), 1 deletion(-) + +diff --git a/ethtool-copy.h b/ethtool-copy.h +index 6bfbb85..1204076 100644 +--- a/ethtool-copy.h ++++ b/ethtool-copy.h +@@ -1455,6 +1455,21 @@ enum ethtool_link_mode_bit_indices { + ETHTOOL_LINK_MODE_FEC_NONE_BIT = 49, + ETHTOOL_LINK_MODE_FEC_RS_BIT = 50, + ETHTOOL_LINK_MODE_FEC_BASER_BIT = 51, ++ ETHTOOL_LINK_MODE_50000baseKR_Full_BIT = 52, ++ ETHTOOL_LINK_MODE_50000baseSR_Full_BIT = 53, ++ ETHTOOL_LINK_MODE_50000baseCR_Full_BIT = 54, ++ ETHTOOL_LINK_MODE_50000baseLR_ER_FR_Full_BIT = 55, ++ ETHTOOL_LINK_MODE_50000baseDR_Full_BIT = 56, ++ ETHTOOL_LINK_MODE_100000baseKR2_Full_BIT = 57, ++ ETHTOOL_LINK_MODE_100000baseSR2_Full_BIT = 58, ++ ETHTOOL_LINK_MODE_100000baseCR2_Full_BIT = 59, ++ ETHTOOL_LINK_MODE_100000baseLR2_ER2_FR2_Full_BIT = 60, ++ ETHTOOL_LINK_MODE_100000baseDR2_Full_BIT = 61, ++ ETHTOOL_LINK_MODE_200000baseKR4_Full_BIT = 62, ++ ETHTOOL_LINK_MODE_200000baseSR4_Full_BIT = 63, ++ ETHTOOL_LINK_MODE_200000baseLR4_ER4_FR4_Full_BIT = 64, ++ ETHTOOL_LINK_MODE_200000baseDR4_Full_BIT = 65, ++ ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT = 66, + + /* Last allowed bit for __ETHTOOL_LINK_MODE_LEGACY_MASK is bit + * 31. Please do NOT define any SUPPORTED_* or ADVERTISED_* +@@ -1463,7 +1478,7 @@ enum ethtool_link_mode_bit_indices { + */ + + __ETHTOOL_LINK_MODE_LAST +- = ETHTOOL_LINK_MODE_FEC_BASER_BIT, ++ = ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT, + }; + + #define __ETHTOOL_LINK_MODE_LEGACY_MASK(base_name) \ +@@ -1571,6 +1586,7 @@ enum ethtool_link_mode_bit_indices { + #define SPEED_50000 50000 + #define SPEED_56000 56000 + #define SPEED_100000 100000 ++#define SPEED_200000 200000 + + #define SPEED_UNKNOWN -1 + +diff --git a/ethtool.8.in b/ethtool.8.in +index 4053a56..4df6f38 100644 +--- a/ethtool.8.in ++++ b/ethtool.8.in +@@ -650,6 +650,11 @@ lB l lB. + 0x400000000 50000baseCR2 Full + 0x800000000 50000baseKR2 Full + 0x10000000000 50000baseSR2 Full ++0x10000000000000 50000baseKR Full ++0x20000000000000 50000baseSR Full ++0x40000000000000 50000baseCR Full ++0x80000000000000 50000baseLR_ER_FR Full ++0x100000000000000 50000baseDR Full + 0x8000000 56000baseKR4 Full + 0x10000000 56000baseCR4 Full + 0x20000000 56000baseSR4 Full +@@ -658,6 +663,16 @@ lB l lB. + 0x2000000000 100000baseSR4 Full + 0x4000000000 100000baseCR4 Full + 0x8000000000 100000baseLR4_ER4 Full ++0x200000000000000 100000baseKR2 Full ++0x400000000000000 100000baseSR2 Full ++0x800000000000000 100000baseCR2 Full ++0x1000000000000000 100000baseLR2_ER2_FR2 Full ++0x2000000000000000 100000baseDR2 Full ++0x4000000000000000 200000baseKR4 Full ++0x8000000000000000 200000baseSR4 Full ++0x10000000000000000 200000baseLR4_ER4_FR4 Full ++0x20000000000000000 200000baseDR4 Full ++0x40000000000000000 200000baseCR4 Full + .TE + .TP + .BI phyad \ N +diff --git a/ethtool.c b/ethtool.c +index fb4c088..c36aafd 100644 +--- a/ethtool.c ++++ b/ethtool.c +@@ -530,6 +530,21 @@ static void init_global_link_mode_masks(void) + ETHTOOL_LINK_MODE_10000baseER_Full_BIT, + ETHTOOL_LINK_MODE_2500baseT_Full_BIT, + ETHTOOL_LINK_MODE_5000baseT_Full_BIT, ++ ETHTOOL_LINK_MODE_50000baseKR_Full_BIT, ++ ETHTOOL_LINK_MODE_50000baseSR_Full_BIT, ++ ETHTOOL_LINK_MODE_50000baseCR_Full_BIT, ++ ETHTOOL_LINK_MODE_50000baseLR_ER_FR_Full_BIT, ++ ETHTOOL_LINK_MODE_50000baseDR_Full_BIT, ++ ETHTOOL_LINK_MODE_100000baseKR2_Full_BIT, ++ ETHTOOL_LINK_MODE_100000baseSR2_Full_BIT, ++ ETHTOOL_LINK_MODE_100000baseCR2_Full_BIT, ++ ETHTOOL_LINK_MODE_100000baseLR2_ER2_FR2_Full_BIT, ++ ETHTOOL_LINK_MODE_100000baseDR2_Full_BIT, ++ ETHTOOL_LINK_MODE_200000baseKR4_Full_BIT, ++ ETHTOOL_LINK_MODE_200000baseSR4_Full_BIT, ++ ETHTOOL_LINK_MODE_200000baseLR4_ER4_FR4_Full_BIT, ++ ETHTOOL_LINK_MODE_200000baseDR4_Full_BIT, ++ ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT, + }; + static const enum ethtool_link_mode_bit_indices + additional_advertised_flags_bits[] = { +@@ -689,6 +704,36 @@ static void dump_link_caps(const char *prefix, const char *an_prefix, + "2500baseT/Full" }, + { 0, ETHTOOL_LINK_MODE_5000baseT_Full_BIT, + "5000baseT/Full" }, ++ { 0, ETHTOOL_LINK_MODE_50000baseKR_Full_BIT, ++ "50000baseKR/Full" }, ++ { 0, ETHTOOL_LINK_MODE_50000baseSR_Full_BIT, ++ "50000baseSR/Full" }, ++ { 0, ETHTOOL_LINK_MODE_50000baseCR_Full_BIT, ++ "50000baseCR/Full" }, ++ { 0, ETHTOOL_LINK_MODE_50000baseLR_ER_FR_Full_BIT, ++ "50000baseLR_ER_FR/Full" }, ++ { 0, ETHTOOL_LINK_MODE_50000baseDR_Full_BIT, ++ "50000baseDR/Full" }, ++ { 0, ETHTOOL_LINK_MODE_100000baseKR2_Full_BIT, ++ "100000baseKR2/Full" }, ++ { 0, ETHTOOL_LINK_MODE_100000baseSR2_Full_BIT, ++ "100000baseSR2/Full" }, ++ { 0, ETHTOOL_LINK_MODE_100000baseCR2_Full_BIT, ++ "100000baseCR2/Full" }, ++ { 0, ETHTOOL_LINK_MODE_100000baseLR2_ER2_FR2_Full_BIT, ++ "100000baseLR2_ER2_FR2/Full" }, ++ { 0, ETHTOOL_LINK_MODE_100000baseDR2_Full_BIT, ++ "100000baseDR2/Full" }, ++ { 0, ETHTOOL_LINK_MODE_200000baseKR4_Full_BIT, ++ "200000baseKR4/Full" }, ++ { 0, ETHTOOL_LINK_MODE_200000baseSR4_Full_BIT, ++ "200000baseSR4/Full" }, ++ { 0, ETHTOOL_LINK_MODE_200000baseLR4_ER4_FR4_Full_BIT, ++ "200000baseLR4_ER4_FR4/Full" }, ++ { 0, ETHTOOL_LINK_MODE_200000baseDR4_Full_BIT, ++ "200000baseDR4/Full" }, ++ { 0, ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT, ++ "200000baseCR4/Full" }, + }; + int indent; + int did1, new_line_pend, i; +-- +1.8.3.1 + diff --git a/SPECS/ethtool.spec b/SPECS/ethtool.spec index b773f0e..6720646 100644 --- a/SPECS/ethtool.spec +++ b/SPECS/ethtool.spec @@ -1,13 +1,14 @@ Name: ethtool Epoch: 2 -Version: 4.16 -Release: 1%{?dist} +Version: 5.0 +Release: 2%{?dist} Summary: Settings tool for Ethernet NICs License: GPLv2 Group: Applications/System URL: https://www.kernel.org/pub/software/network/%{name}/ Source0: https://www.kernel.org/pub/software/network/%{name}/%{name}-%{version}.tar.xz Conflicts: filesystem < 3 +Patch0: 0001-ethtool-Add-support-for-200Gbps-50Gbps-per-lane-link.patch %description This utility allows querying and changing settings such as speed, @@ -16,6 +17,7 @@ network devices, especially of Ethernet devices. %prep %setup -q +%patch0 -p1 %build %configure @@ -31,6 +33,12 @@ make DESTDIR=%{buildroot} INSTALL='install -p' install %{_mandir}/man8/%{name}.8* %changelog +* Thu May 16 2019 Ivan Vecera - 2:5.0-2 +- Added support for 200Gbps (50Gbps/lane) link mode + +* Wed Mar 13 2019 Ivan Vecera - 2:5.0-1 +- Update to 5.0 (#1688299) + * Sat Apr 14 2018 Robert Scheck - 2:4.16-1 - Update to 4.16 (#1567447)