cfm: Allow time for CCM reception after cfm_configure();
authorEthan Jackson <ethan@nicira.com>
Fri, 1 Apr 2011 20:10:49 +0000 (13:10 -0700)
committerEthan Jackson <ethan@nicira.com>
Fri, 1 Apr 2011 20:36:53 +0000 (13:36 -0700)
commitaac19178a43f5ed3367e2d7a7a19ae34fdf56cfb
treeffc97a0bed489d6fb0c432d99f28bc0fd84bb3b5
parent9aa952b2dd7c091c63dbfc7becb3b3dcc9f7bfce
cfm: Allow time for CCM reception after cfm_configure();

Before this (and the previous) patch, whenever cfm_configure was
called it would set the fault_timer to expired.  Thus, the next
call to cfm_run would notice a lack of CCM reception and trigger a
faulted status.  This is a bug in and of itself, but normally would
not be a big deal because cfm_configure should only be called
infrequently (when the database changes).  However due to an
unrelated bug, cfm_configure() was getting called approximately once
per second.  This resulted in all monitors showing faults all of
the time.

This patch fixes the problem by not expiring the timer at
cfm_configure().  Instead it gives it the appropriate
fault_interval amount of time to miss heartbeats.

Bug #5244.
lib/cfm.c