diff options
author | Andrew Lunn <andrew@lunn.ch> | 2015-12-03 21:12:32 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-12-05 17:41:42 -0500 |
commit | 3ef0952ca85e28226b09a6d833c30e3e604a63c8 (patch) | |
tree | 736c5ecb91f789a268c0ef3404c8c9d8c6476245 | |
parent | 2f8364a291e8adde25c93f97a76abbcaf4b1ed3f (diff) | |
download | linux-3ef0952ca85e28226b09a6d833c30e3e604a63c8.tar.bz2 |
ipv6: Only act upon NETDEV_*_TYPE_CHANGE if we have ipv6 addresses
An interface changing type may not have IPv6 addresses. Don't
call the address configuration type change in this case.
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/ipv6/addrconf.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index 6936d0d8c6b1..5e9111da449d 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c @@ -3287,7 +3287,8 @@ static int addrconf_notify(struct notifier_block *this, unsigned long event, case NETDEV_PRE_TYPE_CHANGE: case NETDEV_POST_TYPE_CHANGE: - addrconf_type_change(dev, event); + if (idev) + addrconf_type_change(dev, event); break; } |