Message ID | 1273671629-15577-2-git-send-email-ian.campbell@citrix.com |
---|---|
State | Rejected, archived |
Delegated to: | David Miller |
Headers | show |
diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c index e26f723..5b04124 100644 --- a/net/ipv4/devinet.c +++ b/net/ipv4/devinet.c @@ -1081,6 +1081,7 @@ static int inetdev_event(struct notifier_block *this, unsigned long event, } ip_mc_up(in_dev); /* fall through */ + case NETDEV_CHANGE: case NETDEV_CHANGEADDR: /* Send gratuitous ARP to notify of link change */ if (IN_DEV_ARP_NOTIFY(in_dev)) {
One of the use cases of the arp_notify functionality added in commit eefef1 "net: add ARP notify option for devices" is to enable faster network recovery after a virtual machine migration. However a migration appears to the network subsystem as a temporary loss of carrier rather than a down/up pair or an address change etc therefore no gratuitous ARP is sent. Send one in the NETDEV_CHANGE (generated by netif_carrier_{on,off}) case too. This catches carrier down events too but that should be harmless. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Cc: Stephen Hemminger <shemminger@linux-foundation.org> Cc: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> Cc: David S. Miller <davem@davemloft.net> Cc: netdev@vger.kernel.org Cc: stable@kernel.org --- net/ipv4/devinet.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)