ethernet/intel: use core min/max MTU checking
e100: min_mtu 68, max_mtu 1500 - remove e100_change_mtu entirely, is identical to old eth_change_mtu, and no longer serves a purpose. No need to set min_mtu or max_mtu explicitly, as ether_setup() will already set them to 68 and 1500. e1000: min_mtu 46, max_mtu 16110 e1000e: min_mtu 68, max_mtu varies based on adapter fm10k: min_mtu 68, max_mtu 15342 - remove fm10k_change_mtu entirely, does nothing now i40e: min_mtu 68, max_mtu 9706 i40evf: min_mtu 68, max_mtu 9706 igb: min_mtu 68, max_mtu 9216 - There are two different "max" frame sizes claimed and both checked in the driver, the larger value wasn't relevant though, so I've set max_mtu to the smaller of the two values here to retain identical behavior. igbvf: min_mtu 68, max_mtu 9216 - Same issue as igb duplicated ixgb: min_mtu 68, max_mtu 16114 - Also remove pointless old == new check, as that's done in dev_set_mtu ixgbe: min_mtu 68, max_mtu 9710 ixgbevf: min_mtu 68, max_mtu dependent on hardware/firmware - Some hw can only handle up to max_mtu 1504 on a vf, others 9710 CC: netdev@vger.kernel.org CC: intel-wired-lan@lists.osuosl.org CC: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: Jarod Wilson <jarod@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Šī revīzija ir iekļauta:

revīziju iesūtīja
David S. Miller

vecāks
e1c6dccaf3
revīzija
91c527a556
@@ -706,16 +706,6 @@ static netdev_tx_t fm10k_xmit_frame(struct sk_buff *skb, struct net_device *dev)
|
||||
return err;
|
||||
}
|
||||
|
||||
static int fm10k_change_mtu(struct net_device *dev, int new_mtu)
|
||||
{
|
||||
if (new_mtu < 68 || new_mtu > FM10K_MAX_JUMBO_FRAME_SIZE)
|
||||
return -EINVAL;
|
||||
|
||||
dev->mtu = new_mtu;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* fm10k_tx_timeout - Respond to a Tx Hang
|
||||
* @netdev: network interface device structure
|
||||
@@ -1405,7 +1395,6 @@ static const struct net_device_ops fm10k_netdev_ops = {
|
||||
.ndo_validate_addr = eth_validate_addr,
|
||||
.ndo_start_xmit = fm10k_xmit_frame,
|
||||
.ndo_set_mac_address = fm10k_set_mac,
|
||||
.ndo_change_mtu = fm10k_change_mtu,
|
||||
.ndo_tx_timeout = fm10k_tx_timeout,
|
||||
.ndo_vlan_rx_add_vid = fm10k_vlan_rx_add_vid,
|
||||
.ndo_vlan_rx_kill_vid = fm10k_vlan_rx_kill_vid,
|
||||
@@ -1490,5 +1479,9 @@ struct net_device *fm10k_alloc_netdev(const struct fm10k_info *info)
|
||||
|
||||
dev->hw_features |= hw_features;
|
||||
|
||||
/* MTU range: 68 - 15342 */
|
||||
dev->min_mtu = ETH_MIN_MTU;
|
||||
dev->max_mtu = FM10K_MAX_JUMBO_FRAME_SIZE;
|
||||
|
||||
return dev;
|
||||
}
|
||||
|
Atsaukties uz šo jaunā problēmā
Block a user