net: remove MTU limits for dummy and ifb device
authorZhang Shengju <zhangshengju@cmss.chinamobile.com>
Fri, 22 Sep 2017 15:57:49 +0000 (23:57 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 25 Sep 2017 23:26:09 +0000 (16:26 -0700)
These two drivers (dummy and ifb) call ether_setup(), after commit
61e84623ace3 ("net: centralize net_device min/max MTU checking"), the
range of mtu is [min_mtu, max_mtu], which is [68, 1500] by default.

These two devices should not have limits on MTU. This patch set their
min_mtu/max_mtu to 0. So that dev_set_mtu() will not check the mtu range,
and can be set with any value.

CC: Eric Dumazet <edumazet@google.com>
CC: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: Zhang Shengju <zhangshengju@cmss.chinamobile.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dummy.c
drivers/net/ifb.c

index e31ab3b94c6f385389095d9740d95826e2690db7..58483af80bdb99bcced68e8938338e7dc5514f6a 100644 (file)
@@ -353,7 +353,7 @@ static void dummy_setup(struct net_device *dev)
        eth_hw_addr_random(dev);
 
        dev->min_mtu = 0;
-       dev->max_mtu = ETH_MAX_MTU;
+       dev->max_mtu = 0;
 }
 
 static int dummy_validate(struct nlattr *tb[], struct nlattr *data[],
index 8870bd2a2e8a2439c4a0618506375db6b9b4f653..0008da7e9d4cc5f3d716803dd8855bd1a341f516 100644 (file)
@@ -231,6 +231,9 @@ static void ifb_setup(struct net_device *dev)
        eth_hw_addr_random(dev);
        dev->needs_free_netdev = true;
        dev->priv_destructor = ifb_dev_free;
+
+       dev->min_mtu = 0;
+       dev->max_mtu = 0;
 }
 
 static netdev_tx_t ifb_xmit(struct sk_buff *skb, struct net_device *dev)