ip_gre: fix IFLA_MTU ignored on NEWLINK
[ Upstream commitffc2b6ee41
] It's safe to remove the setting of dev's needed_headroom and mtu in __gre_tunnel_init, as discussed in [1], ip_tunnel_newlink can do it properly. Now Eric noticed that it could cover the mtu value set in do_setlink when creating a ip_gre dev. It makes IFLA_MTU param not take effect. So this patch is to remove them to make IFLA_MTU work, as in other ipv4 tunnels. [1]: https://patchwork.ozlabs.org/patch/823504/ Fixes:c544193214
("GRE: Refactor GRE tunneling code.") Reported-by: Eric Garver <e@erig.me> Signed-off-by: Xin Long <lucien.xin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
f07b6505f4
Коммит
29764acd50
|
@ -951,9 +951,6 @@ static void __gre_tunnel_init(struct net_device *dev)
|
|||
|
||||
t_hlen = tunnel->hlen + sizeof(struct iphdr);
|
||||
|
||||
dev->needed_headroom = LL_MAX_HEADER + t_hlen + 4;
|
||||
dev->mtu = ETH_DATA_LEN - t_hlen - 4;
|
||||
|
||||
dev->features |= GRE_FEATURES;
|
||||
dev->hw_features |= GRE_FEATURES;
|
||||
|
||||
|
@ -1253,8 +1250,6 @@ static int erspan_tunnel_init(struct net_device *dev)
|
|||
sizeof(struct erspanhdr);
|
||||
t_hlen = tunnel->hlen + sizeof(struct iphdr);
|
||||
|
||||
dev->needed_headroom = LL_MAX_HEADER + t_hlen + 4;
|
||||
dev->mtu = ETH_DATA_LEN - t_hlen - 4;
|
||||
dev->features |= GRE_FEATURES;
|
||||
dev->hw_features |= GRE_FEATURES;
|
||||
dev->priv_flags |= IFF_LIVE_ADDR_CHANGE;
|
||||
|
|
Загрузка…
Ссылка в новой задаче