diff options
author | Thadeu Lima de Souza Cascardo <cascardo@redhat.com> | 2016-04-01 23:17:50 +0300 |
---|---|---|
committer | Sasha Levin <sasha.levin@oracle.com> | 2016-07-12 15:47:43 +0300 |
commit | dbe18e4f04f7b8fb9ab6b8383da49b9efb25e696 (patch) | |
tree | 8fdc0cbe51502c4019957218479621f551bf1b54 /net/ipv6 | |
parent | 6eebc66dba8331624cc45d65af5a7aeffe9319a6 (diff) | |
download | linux-dbe18e4f04f7b8fb9ab6b8383da49b9efb25e696.tar.xz |
ip6_tunnel: set rtnl_link_ops before calling register_netdevice
[ Upstream commit b6ee376cb0b7fb4e7e07d6cd248bd40436fb9ba6 ]
When creating an ip6tnl tunnel with ip tunnel, rtnl_link_ops is not set
before ip6_tnl_create2 is called. When register_netdevice is called, there
is no linkinfo attribute in the NEWLINK message because of that.
Setting rtnl_link_ops before calling register_netdevice fixes that.
Fixes: 0b112457229d ("ip6tnl: add support of link creation via rtnl")
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@redhat.com>
Acked-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
Diffstat (limited to 'net/ipv6')
-rw-r--r-- | net/ipv6/ip6_tunnel.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/ip6_tunnel.c b/net/ipv6/ip6_tunnel.c index 9cb94cfa0ae7..6987d3cb4163 100644 --- a/net/ipv6/ip6_tunnel.c +++ b/net/ipv6/ip6_tunnel.c @@ -273,12 +273,12 @@ static int ip6_tnl_create2(struct net_device *dev) t = netdev_priv(dev); + dev->rtnl_link_ops = &ip6_link_ops; err = register_netdevice(dev); if (err < 0) goto out; strcpy(t->parms.name, dev->name); - dev->rtnl_link_ops = &ip6_link_ops; dev_hold(dev); ip6_tnl_link(ip6n, t); |