diff options
Diffstat (limited to 'net/ipv4/ip_gre.c')
-rw-r--r-- | net/ipv4/ip_gre.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/ipv4/ip_gre.c b/net/ipv4/ip_gre.c index aa973812edc1..7ff52628a73f 100644 --- a/net/ipv4/ip_gre.c +++ b/net/ipv4/ip_gre.c | |||
@@ -278,6 +278,8 @@ static struct ip_tunnel * ipgre_tunnel_locate(struct net *net, | |||
278 | if (!dev) | 278 | if (!dev) |
279 | return NULL; | 279 | return NULL; |
280 | 280 | ||
281 | dev_net_set(dev, net); | ||
282 | |||
281 | if (strchr(name, '%')) { | 283 | if (strchr(name, '%')) { |
282 | if (dev_alloc_name(dev, name) < 0) | 284 | if (dev_alloc_name(dev, name) < 0) |
283 | goto failed_free; | 285 | goto failed_free; |
@@ -1236,6 +1238,7 @@ static void ipgre_tunnel_setup(struct net_device *dev) | |||
1236 | dev->flags = IFF_NOARP; | 1238 | dev->flags = IFF_NOARP; |
1237 | dev->iflink = 0; | 1239 | dev->iflink = 0; |
1238 | dev->addr_len = 4; | 1240 | dev->addr_len = 4; |
1241 | dev->features |= NETIF_F_NETNS_LOCAL; | ||
1239 | } | 1242 | } |
1240 | 1243 | ||
1241 | static int ipgre_tunnel_init(struct net_device *dev) | 1244 | static int ipgre_tunnel_init(struct net_device *dev) |