From: Nikolay Aleksandrov <niko...@cumulusnetworks.com>

Devices these days can have any speed and as was recently pointed out
any speed from 0 to INT_MAX is valid so adjust speed validation to
accept such values.

Signed-off-by: Nikolay Aleksandrov <niko...@cumulusnetworks.com>
---
 include/uapi/linux/ethtool.h | 19 +------------------
 1 file changed, 1 insertion(+), 18 deletions(-)

diff --git a/include/uapi/linux/ethtool.h b/include/uapi/linux/ethtool.h
index 19676a420fe3..0c608192a4ef 100644
--- a/include/uapi/linux/ethtool.h
+++ b/include/uapi/linux/ethtool.h
@@ -1321,24 +1321,7 @@ enum ethtool_sfeatures_retval_bits {
 
 static inline int ethtool_validate_speed(__u32 speed)
 {
-       switch (speed) {
-       case SPEED_10:
-       case SPEED_100:
-       case SPEED_1000:
-       case SPEED_2500:
-       case SPEED_5000:
-       case SPEED_10000:
-       case SPEED_20000:
-       case SPEED_25000:
-       case SPEED_40000:
-       case SPEED_50000:
-       case SPEED_56000:
-       case SPEED_100000:
-       case SPEED_UNKNOWN:
-               return 1;
-       }
-
-       return 0;
+       return speed <= INT_MAX || speed == SPEED_UNKNOWN;
 }
 
 /* Duplex, half or full. */
-- 
2.4.3

Reply via email to