summaryrefslogtreecommitdiffstats
path: root/net/core
diff options
context:
space:
mode:
authorJiri Pirko <jiri@resnulli.us>2013-05-28 03:30:22 +0200
committerDavid S. Miller <davem@davemloft.net>2013-05-28 22:11:01 +0200
commitbe9efd3653284f2827fd82861e8e9db9a8f726e1 (patch)
tree601a02b498c24c40a2712feef0c0cfca544fc2c1 /net/core
parentnet: pass info struct via netdevice notifier (diff)
downloadlinux-be9efd3653284f2827fd82861e8e9db9a8f726e1.tar.xz
linux-be9efd3653284f2827fd82861e8e9db9a8f726e1.zip
net: pass changed flags along with NETDEV_CHANGE event
Use new netdevice notifier infrastructure to pass along changed flags. Signed-off-by: Timo Teräs <timo.teras@iki.fi> Signed-off-by: Jiri Pirko <jiri@resnulli.us> v2->v3: shortened notifier_info struct name Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core')
-rw-r--r--net/core/dev.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/net/core/dev.c b/net/core/dev.c
index 54fce6006a83..6eb621cc3b81 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -4771,8 +4771,13 @@ void __dev_notify_flags(struct net_device *dev, unsigned int old_flags)
}
if (dev->flags & IFF_UP &&
- (changes & ~(IFF_UP | IFF_PROMISC | IFF_ALLMULTI | IFF_VOLATILE)))
- call_netdevice_notifiers(NETDEV_CHANGE, dev);
+ (changes & ~(IFF_UP | IFF_PROMISC | IFF_ALLMULTI | IFF_VOLATILE))) {
+ struct netdev_notifier_change_info change_info;
+
+ change_info.flags_changed = changes;
+ call_netdevice_notifiers_info(NETDEV_CHANGE, dev,
+ &change_info.info);
+ }
}
/**