diff options
author | YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> | 2007-02-14 12:07:27 -0500 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-02-26 14:42:55 -0500 |
commit | 45ba9dd2007da23da5ac21179451c3c9fee30a96 (patch) | |
tree | bfea28bfcda1f84c283dd245ef47bbf45fbc3f0d /net/ipv6/addrconf.c | |
parent | 46d480468fd9d165513d96f5e545538425d6472d (diff) |
[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/ipv6/addrconf.c')
-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 7a2a71536b5d..f6ac65d36559 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, | |||
2177 | int run_pending = 0; | 2177 | int run_pending = 0; |
2178 | 2178 | ||
2179 | switch(event) { | 2179 | switch(event) { |
2180 | case NETDEV_REGISTER: | ||
2181 | if (!idev) { | ||
2182 | idev = ipv6_add_dev(dev); | ||
2183 | if (!idev) | ||
2184 | printk(KERN_WARNING "IPv6: add_dev failed for %s\n", | ||
2185 | dev->name); | ||
2186 | } | ||
2187 | break; | ||
2180 | case NETDEV_UP: | 2188 | case NETDEV_UP: |
2181 | case NETDEV_CHANGE: | 2189 | case NETDEV_CHANGE: |
2182 | if (event == NETDEV_UP) { | 2190 | if (event == NETDEV_UP) { |