vswitchd: Treat gratuitous ARP requests like gratuitous ARP replies.
authorBen Pfaff <blp@nicira.com>
Thu, 27 May 2010 17:06:36 +0000 (10:06 -0700)
committerBen Pfaff <blp@nicira.com>
Thu, 27 May 2010 17:07:06 +0000 (10:07 -0700)
commit5d0ae1387c968859b390dba9768ce44ac788405b
tree92d9ecc221028d159e5abc4d85b72c2826f511f0
parent208d496f15787e55777c2ef541595f9e750ef771
vswitchd: Treat gratuitous ARP requests like gratuitous ARP replies.

vswitchd has long used a gratuitous ARP reply as an indication that a VM
has migrated, because traditional xen.org Linux DomUs send such packets out
when they complete migration.  Relatively recently, however, we realized
that upstream Linux does not do this.  Ian Campbell tracked this down to
two separate issues:

        1. A bug prevented gratuitous ARPs from being sent.

        2. When this was fixed, the gratuitous ARPs that were sent were
           requests, not replies, although kernel documentation sent that
           replies were to be sent.

Ian submitted patches to fix both bugs.  #1 is in process of revision for
acceptance.  #2 was rejected: according to Dave Miller, the documentation
is wrong, not the implementation, because ARP replies would unnecessarily
fill up the ARP tables of devices on the network.

OVS has not until now treated gratuitous ARP requests specially, only
replies.  Now that Linux will be using ARP requests to indicate migration,
OVS should also treat them as such.!  This commit does so.

See http://marc.info/?l=linux-netdev&m=127367215620212&w=2 for Ian's
original patch and http://marc.info/?l=linux-netdev&m=127468303701361&w=2
for Dave Miller's response.

CC: Ian Campbell <Ian.Campbell@citrix.com>
NIC-74.
vswitchd/bridge.c