bonding: add some slack to arp monitoring time limits
authorJiri Bohac <jbohac@suse.cz>
Thu, 30 Aug 2012 12:02:47 +0000 (12:02 +0000)
committerDavid S. Miller <davem@davemloft.net>
Fri, 31 Aug 2012 20:37:12 +0000 (16:37 -0400)
commitda210f559019ba1cd4ebee2a28ad158bfb95bab2
tree9dd79ea671975ded4249dd6643f69de104c5580d
parenteb7e0575966f9c84434e92c8a3f69719cc2e7571
bonding: add some slack to arp monitoring time limits

Currently, all the time limits in the bonding ARP monitor are in
multiples of arp_interval -- the time interval at which the ARP
monitor is periodically scheduled.

With a fast network round-trip and a little scheduling latency
of the ARP monitor work, a limit of n*delta_in_ticks may
effectively mean (n-1)*delta_in_ticks.

This is fatal in case of n==1  (the link will stay down
forever) and makes the behaviour non-deterministic in all the
other cases.

Add a delta_in_ticks/2 time slack to all the time limits.

Signed-off-by: Jiri Bohac <jbohac@suse.cz>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bonding/bond_main.c