[ovs-dev] [PATCH] cfm: Mark CFM as deprecated.

Ethan Jackson ethan at nicira.com
Thu Dec 18 21:10:07 UTC 2014


The current implementation is not standards compliant and inferior to
BFD in every way.  This patch marks it as deprecated so it may be
removed in the future.

Signed-off-by: Ethan Jackson <ethan at nicira.com>
---
 lib/cfm.c            | 7 +++++++
 vswitchd/vswitch.xml | 4 ++++
 2 files changed, 11 insertions(+)

diff --git a/lib/cfm.c b/lib/cfm.c
index 23c1c6f..ce3636c 100644
--- a/lib/cfm.c
+++ b/lib/cfm.c
@@ -347,8 +347,15 @@ cfm_status_changed(struct cfm *cfm) OVS_REQUIRES(mutex)
 struct cfm *
 cfm_create(const struct netdev *netdev) OVS_EXCLUDED(mutex)
 {
+    static struct ovsthread_once once = OVSTHREAD_ONCE_INITIALIZER;
     struct cfm *cfm;
 
+    if (ovsthread_once_start(&once)) {
+        VLOG_WARN("CFM is deprecated and will likely be removed in future"
+                  " releases.  Consider switching to BFD");
+        ovsthread_once_done(&once);
+    }
+
     cfm = xzalloc(sizeof *cfm);
     cfm->netdev = netdev_ref(netdev);
     cfm->name = netdev_get_name(cfm->netdev);
diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml
index 37a33a6..f3dc0af 100644
--- a/vswitchd/vswitch.xml
+++ b/vswitchd/vswitch.xml
@@ -2387,6 +2387,10 @@
 
     <group title="Connectivity Fault Management">
       <p>
+          This feature is deprecated and may be removed in future releases.
+      </p>
+
+      <p>
         802.1ag Connectivity Fault Management (CFM) allows a group of
         Maintenance Points (MPs) called a Maintenance Association (MA) to
         detect connectivity problems with each other.  MPs within a MA should
-- 
1.9.1




More information about the dev mailing list