re-introduce distill_checkpoint_ready
authorAdrian Reber <adrian.reber@hs-esslingen.de>
Mon, 3 Mar 2014 14:44:19 +0000 (15:44 +0100)
committerAdrian Reber <adrian.reber@hs-esslingen.de>
Mon, 3 Mar 2014 15:08:44 +0000 (16:08 +0100)
In the OPAL_ENABLE_FT_CR code path there used to be a variable
'mca_base_component_distill_checkpoint_ready' which got removed.
The FT code was not compiling and while trying to get it to compile
again the old variable was #ifdef'd out. This re-introduces the
variable with a new name 'opal_base_distill_checkpoint_ready'
and enables the code previously #ifdef'd out.

This removes the last hack introduced to get the FT code to compile
again.

opal/mca/base/mca_base_components_open.c
opal/runtime/opal_params.c
opal/runtime/opal_params.h

index 4568a51..59a1e7b 100644 (file)
@@ -13,6 +13,7 @@
  * Copyright (c) 2008-2012 Cisco Systems, Inc.  All rights reserved.
  * Copyright (c) 2011-2013 Los Alamos National Security, LLC.
  *                         All rights reserved.
+ * Copyright (c) 2014      Hochschule Esslingen.  All rights reserved.
  * $COPYRIGHT$
  * 
  * Additional copyrights may follow
@@ -32,6 +33,9 @@
 #include "opal/mca/mca.h"
 #include "opal/mca/base/base.h"
 #include "opal/constants.h"
+#if OPAL_ENABLE_FT_CR == 1
+#include "opal/runtime/opal_params.h"
+#endif
 
 /*
  * Local functions
@@ -141,18 +145,9 @@ static int open_components(mca_base_framework_t *framework)
      * NTH: Logic moved to mca_base_components_filter.
      */
 #if (OPAL_ENABLE_FT == 1) && (OPAL_ENABLE_FT_CR == 1)
-#ifdef ENABLE_FT_FIXED
-    /* FIXME_FT
-     *
-     * the variable mca_base_component_distill_checkpoint_ready
-     * was removed by commit 8181c8273c486bba59b3dead324939eac1a58b8c (r28237)
-     * "Introduce the MCA framework system. This formalizes the interface frameworks must provide."
-     *
-     * */
-    if (mca_base_component_distill_checkpoint_ready) {
+    if (opal_base_distill_checkpoint_ready) {
         open_only_flags |= MCA_BASE_METADATA_PARAM_CHECKPOINT;
     }
-#endif /* ENABLE_FT_FIXED */
 #endif  /* (OPAL_ENABLE_FT == 1) && (OPAL_ENABLE_FT_CR == 1) */
 
     /* If mca_base_framework_register_components was called with the MCA_BASE_COMPONENTS_ALL flag 
index f15256f..61a8abd 100644 (file)
@@ -15,6 +15,7 @@
  * Copyright (c) 2009      Oak Ridge National Labs.  All rights reserved.
  * Copyright (c) 2010-2013 Los Alamos National Security, LLC.
  *                         All rights reserved.
+ * Copyright (c) 2014      Hochschule Esslingen.  All rights reserved.
  * $COPYRIGHT$
  * 
  * Additional copyrights may follow
@@ -44,6 +45,10 @@ char *opal_signal_string = NULL;
 char *opal_net_private_ipv4 = NULL;
 char *opal_set_max_sys_limits = NULL;
 
+#if OPAL_ENABLE_FT_CR == 1
+bool opal_base_distill_checkpoint_ready = false;
+#endif
+
 int opal_register_params(void)
 {
     static bool opal_register_done = false;
@@ -122,6 +127,19 @@ int opal_register_params(void)
     }
 #endif
 
+#if OPAL_ENABLE_FT_CR == 1
+    opal_base_distill_checkpoint_ready = false;
+    ret = mca_base_var_register("opal", "opal", "base", "distill_checkpoint_ready",
+                                "Distill only those components that are Checkpoint Ready",
+                                MCA_BASE_VAR_TYPE_BOOL, NULL, 0, MCA_BASE_VAR_FLAG_SETTABLE,
+                                OPAL_INFO_LVL_8, MCA_BASE_VAR_SCOPE_LOCAL,
+                                &opal_base_distill_checkpoint_ready);
+
+    if (0 > ret) {
+        return ret;
+    }
+#endif
+
     /* RFC1918 defines
        - 10.0.0./8
        - 172.16.0.0/12
index 7a0f23c..77c992b 100644 (file)
@@ -15,6 +15,7 @@
  * Copyright (c) 2009      Oak Ridge National Labs.  All rights reserved.
  * Copyright (c) 2010-2013 Los Alamos National Security, LLC.
  *                         All rights reserved.
+ * Copyright (c) 2014      Hochschule Esslingen.  All rights reserved.
  * $COPYRIGHT$
  * 
  * Additional copyrights may follow
@@ -33,4 +34,8 @@ extern char *opal_set_max_sys_limits;
 extern bool opal_progress_debug;
 #endif
 
+#if OPAL_ENABLE_FT_CR == 1
+extern bool opal_base_distill_checkpoint_ready;
+#endif
+
 #endif