ethernet/neterion: use core min/max MTU checking
authorJarod Wilson <jarod@redhat.com>
Mon, 17 Oct 2016 19:54:12 +0000 (15:54 -0400)
committerDavid S. Miller <davem@davemloft.net>
Tue, 18 Oct 2016 15:34:20 +0000 (11:34 -0400)
s2io: min_mtu 46, max_mtu 9600

vxge: min_mtu 68, max_mtu 9600

CC: netdev@vger.kernel.org
CC: Jon Mason <jdmason@kudzu.us>
Signed-off-by: Jarod Wilson <jarod@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/neterion/s2io.c
drivers/net/ethernet/neterion/vxge/vxge-config.h
drivers/net/ethernet/neterion/vxge/vxge-main.c

index eaa37c079a7cd740058b366c4c5e7855447bdc58..564f682fa4dc326dba8f5bc142a62c881479ed12 100644 (file)
@@ -6678,11 +6678,6 @@ static int s2io_change_mtu(struct net_device *dev, int new_mtu)
        struct s2io_nic *sp = netdev_priv(dev);
        int ret = 0;
 
-       if ((new_mtu < MIN_MTU) || (new_mtu > S2IO_JUMBO_SIZE)) {
-               DBG_PRINT(ERR_DBG, "%s: MTU size is invalid.\n", dev->name);
-               return -EPERM;
-       }
-
        dev->mtu = new_mtu;
        if (netif_running(dev)) {
                s2io_stop_all_tx_queue(sp);
@@ -8019,6 +8014,10 @@ s2io_init_nic(struct pci_dev *pdev, const struct pci_device_id *pre)
                config->mc_start_offset = S2IO_HERC_MC_ADDR_START_OFFSET;
        }
 
+       /* MTU range: 46 - 9600 */
+       dev->min_mtu = MIN_MTU;
+       dev->max_mtu = S2IO_JUMBO_SIZE;
+
        /* store mac addresses from CAM to s2io_nic structure */
        do_s2io_store_unicast_mc(sp);
 
index 6ce4412fcc1ad90b676965effafa7af65d012648..cfa970417f818036bc83d6ed22deeb47cea28e90 100644 (file)
@@ -27,7 +27,7 @@
        (((size) - (((u64)adrs) & ((size)-1))) & ((size)-1))
 #endif
 
-#define VXGE_HW_MIN_MTU                                68
+#define VXGE_HW_MIN_MTU                                ETH_MIN_MTU
 #define VXGE_HW_MAX_MTU                                9600
 #define VXGE_HW_DEFAULT_MTU                    1500
 
index e0993eba5df3f8081bff6329a97b4753e876cbe3..e07b936f64ecc85babfe4eeadaf4b666dcd8d335 100644 (file)
@@ -3074,11 +3074,6 @@ static int vxge_change_mtu(struct net_device *dev, int new_mtu)
 
        vxge_debug_entryexit(vdev->level_trace,
                "%s:%d", __func__, __LINE__);
-       if ((new_mtu < VXGE_HW_MIN_MTU) || (new_mtu > VXGE_HW_MAX_MTU)) {
-               vxge_debug_init(vdev->level_err,
-                       "%s: mtu size is invalid", dev->name);
-               return -EPERM;
-       }
 
        /* check if device is down already */
        if (unlikely(!is_vxge_card_up(vdev))) {
@@ -3462,6 +3457,10 @@ static int vxge_device_register(struct __vxge_hw_device *hldev,
                        "%s : using High DMA", __func__);
        }
 
+       /* MTU range: 68 - 9600 */
+       ndev->min_mtu = VXGE_HW_MIN_MTU;
+       ndev->max_mtu = VXGE_HW_MAX_MTU;
+
        ret = register_netdev(ndev);
        if (ret) {
                vxge_debug_init(vxge_hw_device_trace_level_get(hldev),