|
@@ -327,6 +327,24 @@ void netif_carrier_off(struct net_device *dev)
|
|
|
}
|
|
|
EXPORT_SYMBOL(netif_carrier_off);
|
|
|
|
|
|
+/**
|
|
|
+ * netif_notify_peers - notify network peers about existence of @dev
|
|
|
+ * @dev: network device
|
|
|
+ *
|
|
|
+ * Generate traffic such that interested network peers are aware of
|
|
|
+ * @dev, such as by generating a gratuitous ARP. This may be used when
|
|
|
+ * a device wants to inform the rest of the network about some sort of
|
|
|
+ * reconfiguration such as a failover event or virtual machine
|
|
|
+ * migration.
|
|
|
+ */
|
|
|
+void netif_notify_peers(struct net_device *dev)
|
|
|
+{
|
|
|
+ rtnl_lock();
|
|
|
+ call_netdevice_notifiers(NETDEV_NOTIFY_PEERS, dev);
|
|
|
+ rtnl_unlock();
|
|
|
+}
|
|
|
+EXPORT_SYMBOL(netif_notify_peers);
|
|
|
+
|
|
|
/* "NOOP" scheduler: the best scheduler, recommended for all interfaces
|
|
|
under all circumstances. It is difficult to invent anything faster or
|
|
|
cheaper.
|