ethtool: make validate_speed accept all speeds between 0 and INT_MAX
authorNikolay Aleksandrov <nikolay@cumulusnetworks.com>
Sun, 7 Feb 2016 20:52:23 +0000 (21:52 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 11 Feb 2016 16:55:38 +0000 (11:55 -0500)
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 <nikolay@cumulusnetworks.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/uapi/linux/ethtool.h

index 4345f80..190aea0 100644 (file)
@@ -1377,24 +1377,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. */