aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/ipv6/addrconf.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 3ad081e9366b..9b96de3ba5eb 100644
--- a/net/ipv6/addrconf.c
+++ b/net/ipv6/addrconf.c
@@ -334,7 +334,7 @@ static struct inet6_dev * ipv6_add_dev(struct net_device *dev)
334 334
335 rwlock_init(&ndev->lock); 335 rwlock_init(&ndev->lock);
336 ndev->dev = dev; 336 ndev->dev = dev;
337 memcpy(&ndev->cnf, &ipv6_devconf_dflt, sizeof(ndev->cnf)); 337 memcpy(&ndev->cnf, dev->nd_net->ipv6.devconf_dflt, sizeof(ndev->cnf));
338 ndev->cnf.mtu6 = dev->mtu; 338 ndev->cnf.mtu6 = dev->mtu;
339 ndev->cnf.sysctl = NULL; 339 ndev->cnf.sysctl = NULL;
340 ndev->nd_parms = neigh_parms_alloc(dev, &nd_tbl); 340 ndev->nd_parms = neigh_parms_alloc(dev, &nd_tbl);
@@ -481,11 +481,11 @@ static void addrconf_fixup_forwarding(struct ctl_table *table, int *p, int old)
481 struct net *net; 481 struct net *net;
482 482
483 net = (struct net *)table->extra2; 483 net = (struct net *)table->extra2;
484 if (p == &ipv6_devconf_dflt.forwarding) 484 if (p == &net->ipv6.devconf_dflt->forwarding)
485 return; 485 return;
486 486
487 if (p == &ipv6_devconf.forwarding) { 487 if (p == &ipv6_devconf.forwarding) {
488 ipv6_devconf_dflt.forwarding = ipv6_devconf.forwarding; 488 net->ipv6.devconf_dflt->forwarding = ipv6_devconf.forwarding;
489 addrconf_forward_change(net); 489 addrconf_forward_change(net);
490 } else if ((!*p) ^ (!old)) 490 } else if ((!*p) ^ (!old))
491 dev_forward_change((struct inet6_dev *)table->extra1); 491 dev_forward_change((struct inet6_dev *)table->extra1);