ip6_tunnel: fix IFLA_MTU ignored on NEWLINK
Commit 128bb975dc
("ip6_gre: init dev->mtu and dev->hard_header_len
correctly") fixed IFLA_MTU ignored on NEWLINK for ip6_gre. The same
mtu fix is also needed for ip6_tunnel.
Note that dev->hard_header_len setting for ip6_tunnel works fine,
no need to fix it.
Reported-by: Jianlin Shi <jishi@redhat.com>
Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
ffc2b6ee41
commit
a6aa804462
|
@ -1982,14 +1982,14 @@ static int ip6_tnl_newlink(struct net *src_net, struct net_device *dev,
|
|||
{
|
||||
struct net *net = dev_net(dev);
|
||||
struct ip6_tnl_net *ip6n = net_generic(net, ip6_tnl_net_id);
|
||||
struct ip6_tnl *nt, *t;
|
||||
struct ip_tunnel_encap ipencap;
|
||||
struct ip6_tnl *nt, *t;
|
||||
int err;
|
||||
|
||||
nt = netdev_priv(dev);
|
||||
|
||||
if (ip6_tnl_netlink_encap_parms(data, &ipencap)) {
|
||||
int err = ip6_tnl_encap_setup(nt, &ipencap);
|
||||
|
||||
err = ip6_tnl_encap_setup(nt, &ipencap);
|
||||
if (err < 0)
|
||||
return err;
|
||||
}
|
||||
|
@ -2005,7 +2005,11 @@ static int ip6_tnl_newlink(struct net *src_net, struct net_device *dev,
|
|||
return -EEXIST;
|
||||
}
|
||||
|
||||
return ip6_tnl_create2(dev);
|
||||
err = ip6_tnl_create2(dev);
|
||||
if (!err && tb[IFLA_MTU])
|
||||
ip6_tnl_change_mtu(dev, nla_get_u32(tb[IFLA_MTU]));
|
||||
|
||||
return err;
|
||||
}
|
||||
|
||||
static int ip6_tnl_changelink(struct net_device *dev, struct nlattr *tb[],
|
||||
|
|
Loading…
Reference in New Issue