Commit 18c310fb authored by Jarod Wilson's avatar Jarod Wilson Committed by David S. Miller

ethernet/neterion: use core min/max MTU checking

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: default avatarJarod Wilson <jarod@redhat.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent f7ad72bf
...@@ -6678,11 +6678,6 @@ static int s2io_change_mtu(struct net_device *dev, int new_mtu) ...@@ -6678,11 +6678,6 @@ static int s2io_change_mtu(struct net_device *dev, int new_mtu)
struct s2io_nic *sp = netdev_priv(dev); struct s2io_nic *sp = netdev_priv(dev);
int ret = 0; 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; dev->mtu = new_mtu;
if (netif_running(dev)) { if (netif_running(dev)) {
s2io_stop_all_tx_queue(sp); s2io_stop_all_tx_queue(sp);
...@@ -8019,6 +8014,10 @@ s2io_init_nic(struct pci_dev *pdev, const struct pci_device_id *pre) ...@@ -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; 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 */ /* store mac addresses from CAM to s2io_nic structure */
do_s2io_store_unicast_mc(sp); do_s2io_store_unicast_mc(sp);
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
(((size) - (((u64)adrs) & ((size)-1))) & ((size)-1)) (((size) - (((u64)adrs) & ((size)-1))) & ((size)-1))
#endif #endif
#define VXGE_HW_MIN_MTU 68 #define VXGE_HW_MIN_MTU ETH_MIN_MTU
#define VXGE_HW_MAX_MTU 9600 #define VXGE_HW_MAX_MTU 9600
#define VXGE_HW_DEFAULT_MTU 1500 #define VXGE_HW_DEFAULT_MTU 1500
......
...@@ -3074,11 +3074,6 @@ static int vxge_change_mtu(struct net_device *dev, int new_mtu) ...@@ -3074,11 +3074,6 @@ static int vxge_change_mtu(struct net_device *dev, int new_mtu)
vxge_debug_entryexit(vdev->level_trace, vxge_debug_entryexit(vdev->level_trace,
"%s:%d", __func__, __LINE__); "%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 */ /* check if device is down already */
if (unlikely(!is_vxge_card_up(vdev))) { if (unlikely(!is_vxge_card_up(vdev))) {
...@@ -3462,6 +3457,10 @@ static int vxge_device_register(struct __vxge_hw_device *hldev, ...@@ -3462,6 +3457,10 @@ static int vxge_device_register(struct __vxge_hw_device *hldev,
"%s : using High DMA", __func__); "%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); ret = register_netdev(ndev);
if (ret) { if (ret) {
vxge_debug_init(vxge_hw_device_trace_level_get(hldev), vxge_debug_init(vxge_hw_device_trace_level_get(hldev),
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment