mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-19 02:34:01 +08:00
net: usb: qmi_wwan: restore mtu min/max values after raw_ip switch
usbnet creates network interfaces with min_mtu = 0 and max_mtu = ETH_MAX_MTU. These values are not modified by qmi_wwan when the network interface is created initially, allowing, for example, to set mtu greater than 1500. When a raw_ip switch is done (raw_ip set to 'Y', then set to 'N') the mtu values for the network interface are set through ether_setup, with min_mtu = ETH_MIN_MTU and max_mtu = ETH_DATA_LEN, not allowing anymore to set mtu greater than 1500 (error: mtu greater than device maximum). The patch restores the original min/max mtu values set by usbnet after a raw_ip switch. Signed-off-by: Daniele Palmas <dnlplm@gmail.com> Acked-by: Bjørn Mork <bjorn@mork.no> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
39f3b41aa7
commit
eae7172f81
@ -337,6 +337,9 @@ static void qmi_wwan_netdev_setup(struct net_device *net)
|
|||||||
netdev_dbg(net, "mode: raw IP\n");
|
netdev_dbg(net, "mode: raw IP\n");
|
||||||
} else if (!net->header_ops) { /* don't bother if already set */
|
} else if (!net->header_ops) { /* don't bother if already set */
|
||||||
ether_setup(net);
|
ether_setup(net);
|
||||||
|
/* Restoring min/max mtu values set originally by usbnet */
|
||||||
|
net->min_mtu = 0;
|
||||||
|
net->max_mtu = ETH_MAX_MTU;
|
||||||
clear_bit(EVENT_NO_IP_ALIGN, &dev->flags);
|
clear_bit(EVENT_NO_IP_ALIGN, &dev->flags);
|
||||||
netdev_dbg(net, "mode: Ethernet\n");
|
netdev_dbg(net, "mode: Ethernet\n");
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user