Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use kernelImmediate for simcalls execution_{,parallel_}start.
[simgrid.git] / src / simix / smx_context.cpp
index 6944ddf..55bb5e8 100644 (file)
@@ -97,6 +97,9 @@ void SIMIX_context_mod_init()
 {
   xbt_assert(simix_global->context_factory == nullptr);
 
+  smx_context_stack_size_was_set = not simgrid::config::is_default("contexts/stack-size");
+  smx_context_guard_size_was_set = not simgrid::config::is_default("contexts/guard-size");
+
 #if HAVE_THREAD_CONTEXTS && not HAVE_THREAD_LOCAL_STORAGE
   /* the __thread storage class is not available on this platform:
    * use getspecific/setspecific instead to store the current context in each thread */
@@ -104,7 +107,7 @@ void SIMIX_context_mod_init()
 #endif
 
 #if HAVE_SMPI && (defined(__APPLE__) || defined(__NetBSD__))
-  std::string priv = xbt_cfg_get_string("smpi/privatization");
+  std::string priv = simgrid::config::get_value<std::string>("smpi/privatization");
   if (context_factory_name == "thread" && (priv == "dlopen" || priv == "yes" || priv == "default" || priv == "1")) {
     XBT_WARN("dlopen+thread broken on Apple and BSD. Switching to raw contexts.");
     context_factory_name = "raw";
@@ -112,7 +115,7 @@ void SIMIX_context_mod_init()
 #endif
 
 #if HAVE_SMPI && defined(__FreeBSD__)
-  if (context_factory_name == "thread" && xbt_cfg_get_string("smpi/privatization") != "no"){
+  if (context_factory_name == "thread" && simgrid::config::get_value<std::string>("smpi/privatization") != "no") {
     XBT_WARN("mmap broken on FreeBSD, but dlopen+thread broken too. Switching to dlopen+raw contexts.");
     context_factory_name = "raw";
   }