cfm: Remove sequence fault reason.
authorEthan Jackson <ethan@nicira.com>
Mon, 9 Jul 2012 22:59:44 +0000 (15:59 -0700)
committerEthan Jackson <ethan@nicira.com>
Tue, 10 Jul 2012 02:01:39 +0000 (19:01 -0700)
Commit 2b540ecb (Added handling of previously ignored cfm faults.)
made the CFM code trigger a fault when a packet is received with an
out of order sequence number.  This means that if even one CFM
probe is dropped, a fault will be triggered because the next
received probe's sequence would be two greater than the last.  This
is in conflict with the 802.1ag requirement that 3.5 dropped probes
triggers fault.

Signed-off-by: Ethan Jackson <ethan@nicira.com>
lib/cfm.c
lib/cfm.h
vswitchd/vswitch.xml

index 670f03710f0c6f37de43a4bb680f796b03794658..b52f97b6ffd6b95cb1cfcbf18a0d03f05f714458 100644 (file)
--- a/lib/cfm.c
+++ b/lib/cfm.c
@@ -633,7 +633,6 @@ cfm_process_heartbeat(struct cfm *cfm, const struct ofpbuf *p)
             }
 
             if (rmp->seq && ccm_seq != (rmp->seq + 1)) {
-                cfm_fault |= CFM_FAULT_SEQUENCE;
                 VLOG_WARN_RL(&rl, "%s: (mpid %"PRIu64") detected sequence"
                              " numbers which indicate possible connectivity"
                              " problems (previous %"PRIu32") (current %"PRIu32
index 4e421fbd68afdde975b7189327440b976e65f0aa..628d539f420a60f6a87d577ebfe5ffcee1e866d5 100644 (file)
--- a/lib/cfm.h
+++ b/lib/cfm.h
@@ -33,8 +33,7 @@ struct ofpbuf;
     CFM_FAULT_REASON(LOOPBACK, loopback)   \
     CFM_FAULT_REASON(OVERFLOW, overflow)   \
     CFM_FAULT_REASON(OVERRIDE, override)   \
-    CFM_FAULT_REASON(INTERVAL, interval)   \
-    CFM_FAULT_REASON(SEQUENCE, sequence)
+    CFM_FAULT_REASON(INTERVAL, interval)
 
 enum cfm_fault_bit_index {
 #define CFM_FAULT_REASON(NAME, STR) CFM_FAULT_INDEX_##NAME,
index 15f162a18effc565a347226263b6033a27781bfa..688f7157221619b8cfbbba2c781e17d4ccbe03d6 100644 (file)
         frame having an invalid interval.
       </column>
 
-      <column name="cfm_fault_status" key="sequence">
-        Indicates a CFM fault was triggered because the CFM module received
-        a CCM frame with a sequence number that it was not expecting.
-      </column>
-
       <column name="cfm_health">
         <p>
           Indicates the health of the interface as a percentage of CCM frames