mirror of https://gitee.com/openkylin/linux.git
net: ethernet: aquantia: Fixes for aq_ndev_change_mtu
1)Removed unnecessary comparsion "old_mtu == new_mtu". This check is not needed. Function aq_ndev_change_mtu wont be called if mtu has not changed. 2)Removed extra assignment ndev->mtu = new_mtu; This assignment already done inside __dev_set_mtu(). 3)Use core MTU checking for min_mtu. Signed-off-by: Pavel Belous <pavel.belous@aquantia.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
15e32a5e1e
commit
5513e16421
|
@ -100,20 +100,10 @@ static int aq_ndev_start_xmit(struct sk_buff *skb, struct net_device *ndev)
|
|||
static int aq_ndev_change_mtu(struct net_device *ndev, int new_mtu)
|
||||
{
|
||||
struct aq_nic_s *aq_nic = netdev_priv(ndev);
|
||||
int err = 0;
|
||||
int err = aq_nic_set_mtu(aq_nic, new_mtu + ETH_HLEN);
|
||||
|
||||
if (new_mtu == ndev->mtu) {
|
||||
err = 0;
|
||||
goto err_exit;
|
||||
}
|
||||
if (new_mtu < 68) {
|
||||
err = -EINVAL;
|
||||
goto err_exit;
|
||||
}
|
||||
err = aq_nic_set_mtu(aq_nic, new_mtu + ETH_HLEN);
|
||||
if (err < 0)
|
||||
goto err_exit;
|
||||
ndev->mtu = new_mtu;
|
||||
|
||||
if (netif_running(ndev)) {
|
||||
aq_ndev_close(ndev);
|
||||
|
|
|
@ -214,6 +214,7 @@ struct aq_nic_s *aq_nic_alloc_cold(const struct net_device_ops *ndev_ops,
|
|||
SET_NETDEV_DEV(ndev, dev);
|
||||
|
||||
ndev->if_port = port;
|
||||
ndev->min_mtu = ETH_MIN_MTU;
|
||||
self->ndev = ndev;
|
||||
|
||||
self->aq_pci_func = aq_pci_func;
|
||||
|
|
Loading…
Reference in New Issue