[ewg] [Fwd: [PATCH] cxgb3: ethtool stats broken in backports]

Steve Wise swise at opengridcomputing.com
Thu Sep 11 11:24:32 PDT 2008


Vlad,

Please pull this patch from:

git://git.openfabrics.org/~swise/ofed-1.4 ofed_kernel

This resolves bug 1171.

Thanks,

Steve.


-------- Original Message --------
Subject: 	[PATCH] cxgb3: ethtool stats broken in backports
Resent-Date: 	Wed, 10 Sep 2008 17:55:46 -0500
Resent-From: 	jon at opengridcomputing.com
Resent-To: 	ewg at lists.openfabrics.org, swise at opengridcomputing.com
Date: 	Wed, 10 Sep 2008 16:36:48 -0500
From: 	Jon Mason <jon at opengridcomputing.com>
To: 	swise at opengridcomputing.com



In more recent Linux kernels, ethtool get_stats_count has been replaced
with get_sset_count.  These functions are used to determine the size of the
array to allocate for the device specific statistics.  However, the OFED
backport patches for cxgb3 are not properly reverting the code to its
former state and simply removing the get_sset_count references.  This
causes device specific statistics to not be queried.

The patch below correctly reverts the changes for older kernels and
should fix all the backports.  It has been successfully tested on FC7
kernels.

Thanks,
Jon

Signed-off-by: Jon Mason <jon at opengridcomputing.com>

diff --git a/kernel_patches/backport/2.6.16/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.16/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.16/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.16/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.16_sles10/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.16_sles10/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.16_sles10/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.16_sles10/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.16_sles10_sp1/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.16_sles10_sp1/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.16_sles10_sp1/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.16_sles10_sp1/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.16_sles10_sp2/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.16_sles10_sp2/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.16_sles10_sp2/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.16_sles10_sp2/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.17/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.17/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.17/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.17/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.18-EL5.1/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.18-EL5.1/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.18-EL5.1/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.18-EL5.1/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.18-EL5.2/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.18-EL5.2/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.18-EL5.2/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.18-EL5.2/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.18/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.18/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.18/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.18/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.18_FC6/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.18_FC6/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.18_FC6/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.18_FC6/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.18_suse10_2/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.18_suse10_2/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.18_suse10_2/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.18_suse10_2/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.19/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.19/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.19/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.19/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.20/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.20/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.20/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.20/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.21/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.21/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.21/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.21/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.22/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.22/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.22/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.22/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.22_suse10_3/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.22_suse10_3/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.22_suse10_3/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.22_suse10_3/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.23/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.23/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.23/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.23/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.9_U4/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.9_U4/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.9_U4/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.9_U4/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.9_U5/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.9_U5/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.9_U5/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.9_U5/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.9_U6/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.9_U6/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.9_U6/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.9_U6/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,
diff --git a/kernel_patches/backport/2.6.9_U7/cxgb3_0030_sset.patch b/kernel_patches/backport/2.6.9_U7/cxgb3_0030_sset.patch
index 1e6ea0f..14180fa 100644
--- a/kernel_patches/backport/2.6.9_U7/cxgb3_0030_sset.patch
+++ b/kernel_patches/backport/2.6.9_U7/cxgb3_0030_sset.patch
@@ -1,27 +1,30 @@
---- a/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:05.000000000 -0500
-+++ b/drivers/net/cxgb3/cxgb3_main.c	2008-06-12 09:48:15.000000000 -0500
-@@ -1248,16 +1248,6 @@ static char stats_strings[][ETH_GSTRING_
+diff --git a/drivers/net/cxgb3/cxgb3_main.c b/drivers/net/cxgb3/cxgb3_main.c
+index 5447f3e..8293fa5 100644
+--- a/drivers/net/cxgb3/cxgb3_main.c
++++ b/drivers/net/cxgb3/cxgb3_main.c
+@@ -1222,14 +1222,9 @@ static char stats_strings[][ETH_GSTRING_LEN] = {
  
  };
  
 -static int get_sset_count(struct net_device *dev, int sset)
--{
++static int get_stats_count(struct net_device *dev)
+ {
 -	switch (sset) {
 -	case ETH_SS_STATS:
 -		return ARRAY_SIZE(stats_strings);
 -	default:
 -		return -EOPNOTSUPP;
 -	}
--}
--
- #define T3_REGMAP_SIZE (3 * 1024)
++	return ARRAY_SIZE(stats_strings);
+ }
  
- static int get_regs_len(struct net_device *dev)
-@@ -1763,7 +1753,6 @@ static const struct ethtool_ops cxgb_eth
+ #define T3_REGMAP_SIZE (3 * 1024)
+@@ -1747,7 +1742,7 @@ static const struct ethtool_ops cxgb_ethtool_ops = {
  	.get_strings = get_strings,
  	.phys_id = cxgb3_phys_id,
  	.nway_reset = restart_autoneg,
 -	.get_sset_count = get_sset_count,
++	.get_stats_count = get_stats_count,
  	.get_ethtool_stats = get_stats,
  	.get_regs_len = get_regs_len,
  	.get_regs = get_regs,




More information about the ewg mailing list