diff options
author | YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> | 2007-02-15 02:07:27 +0900 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-02-26 11:42:55 -0800 |
commit | 45ba9dd2007da23da5ac21179451c3c9fee30a96 (patch) | |
tree | bfea28bfcda1f84c283dd245ef47bbf45fbc3f0d /net | |
parent | 46d480468fd9d165513d96f5e545538425d6472d (diff) | |
download | op-kernel-dev-45ba9dd2007da23da5ac21179451c3c9fee30a96.zip op-kernel-dev-45ba9dd2007da23da5ac21179451c3c9fee30a96.tar.gz |
[IPV6] ADDRCONF: Register inet6_dev earlier.
Allocate inet6_dev earlier to allow users to set up per-interface variables.
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv6/addrconf.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 7a2a715..f6ac65d 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c @@ -2177,6 +2177,14 @@ static int addrconf_notify(struct notifier_block *this, unsigned long event, int run_pending = 0; switch(event) { + case NETDEV_REGISTER: + if (!idev) { + idev = ipv6_add_dev(dev); + if (!idev) + printk(KERN_WARNING "IPv6: add_dev failed for %s\n", + dev->name); + } + break; case NETDEV_UP: case NETDEV_CHANGE: if (event == NETDEV_UP) { |