X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/b266c9f9b644f15f1d397e60f5affa12cf0167d8..404c50aac04e8ea4708cad0b80290945d4d07838:/src/simix/smx_context.cpp diff --git a/src/simix/smx_context.cpp b/src/simix/smx_context.cpp index a75367fefd..9e2dab9ffb 100644 --- a/src/simix/smx_context.cpp +++ b/src/simix/smx_context.cpp @@ -126,11 +126,10 @@ void *SIMIX_context_stack_new(void) if (smx_context_guard_size > 0 && !MC_is_active()) { -#if defined(_WIN32) || (PTH_STACKGROWTH != -1) +#if !defined(PTH_STACKGROWTH) || (PTH_STACKGROWTH != -1) static int warned_once = 0; if (!warned_once) { - XBT_WARN("Stack overflow protection is known to be broken on your system. Either you're on Windows or PTH_STACKGROWTH != -1 (current value is %d).", - PTH_STACKGROWTH); + XBT_WARN("Stack overflow protection is known to be broken on your system. Either stack grows upwards, or it was not even tested properly."); warned_once = 1; } #endif @@ -226,12 +225,9 @@ void SIMIX_context_set_nthreads(int nb_threads) { nb_threads = xbt_os_get_numcores(); XBT_INFO("Auto-setting contexts/nthreads to %d",nb_threads); } - - if (nb_threads > 1) { #ifndef HAVE_THREAD_CONTEXTS - THROWF(arg_error, 0, "The thread factory cannot be run in parallel"); + xbt_assert(nb_threads == 1, "Parallel runs are impossible when the pthreads are missing."); #endif - } smx_parallel_contexts = nb_threads; }