e1000e: flow control thresholds not correct when changing mtu
When changing MTU, save it off prior to resetting otherwise the flow control thresholds may be miscalculated. Signed-off-by: Bruce Allan <bruce.w.allan@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
4c86e0b945
commit
610c992884
1 changed files with 3 additions and 4 deletions
|
@ -4305,8 +4305,10 @@ static int e1000_change_mtu(struct net_device *netdev, int new_mtu)
|
|||
|
||||
while (test_and_set_bit(__E1000_RESETTING, &adapter->state))
|
||||
msleep(1);
|
||||
/* e1000e_down has a dependency on max_frame_size */
|
||||
/* e1000e_down -> e1000e_reset dependent on max_frame_size & mtu */
|
||||
adapter->max_frame_size = max_frame;
|
||||
e_info("changing MTU from %d to %d\n", netdev->mtu, new_mtu);
|
||||
netdev->mtu = new_mtu;
|
||||
if (netif_running(netdev))
|
||||
e1000e_down(adapter);
|
||||
|
||||
|
@ -4336,9 +4338,6 @@ static int e1000_change_mtu(struct net_device *netdev, int new_mtu)
|
|||
adapter->rx_buffer_len = ETH_FRAME_LEN + VLAN_HLEN
|
||||
+ ETH_FCS_LEN;
|
||||
|
||||
e_info("changing MTU from %d to %d\n", netdev->mtu, new_mtu);
|
||||
netdev->mtu = new_mtu;
|
||||
|
||||
if (netif_running(netdev))
|
||||
e1000e_up(adapter);
|
||||
else
|
||||
|
|
Loading…
Add table
Reference in a new issue