From 8042520857ea4ce20d84a8efe2b9d69cc5fcf5ef Mon Sep 17 00:00:00 2001 From: Frederic Suter Date: Mon, 27 Feb 2017 14:07:46 +0100 Subject: [PATCH] please sonar --- src/kernel/context/ContextBoost.cpp | 68 +++++++++++------------------ src/kernel/context/ContextUnix.cpp | 18 +++----- 2 files changed, 33 insertions(+), 53 deletions(-) diff --git a/src/kernel/context/ContextBoost.cpp b/src/kernel/context/ContextBoost.cpp index 8fe39e2538..051dc6fcda 100644 --- a/src/kernel/context/ContextBoost.cpp +++ b/src/kernel/context/ContextBoost.cpp @@ -92,14 +92,12 @@ smx_context_t BoostContextFactory::create_context(std::function code, BoostContext* context = nullptr; if (BoostContext::parallel_) #if HAVE_THREAD_CONTEXTS - context = this->new_context( - std::move(code), cleanup_func, process); + context = this->new_context(std::move(code), cleanup_func, process); #else xbt_die("No support for parallel execution"); #endif else - context = this->new_context( - std::move(code), cleanup_func, process); + context = this->new_context(std::move(code), cleanup_func, process); return context; } @@ -120,8 +118,7 @@ void BoostContextFactory::run_all() { if (xbt_dynar_is_empty(simix_global->process_to_run)) return; - smx_actor_t first_process = - xbt_dynar_get_as(simix_global->process_to_run, 0, smx_actor_t); + smx_actor_t first_process = xbt_dynar_get_as(simix_global->process_to_run, 0, smx_actor_t); BoostContext::process_index_ = 1; /* execute the first process */ static_cast(first_process->context)->resume(); @@ -133,7 +130,7 @@ void BoostContextFactory::run_all() static void smx_ctx_boost_wrapper(std::intptr_t arg) { - BoostContext* context = (BoostContext*) arg; + BoostContext* context = (BoostContext*)(arg); (*context)(); context->stop(); } @@ -149,19 +146,19 @@ BoostContext::BoostContext(std::function code, this->stack_ = SIMIX_context_stack_new(); // We need to pass the bottom of the stack to make_fcontext, // depending on the stack direction it may be the lower or higher address: - #if PTH_STACKGROWTH == -1 - void* stack = (char*) this->stack_ + smx_context_usable_stack_size - 1; - #else +#if PTH_STACKGROWTH == -1 + void* stack = static_cast(this->stack_) + smx_context_usable_stack_size - 1; +#else void* stack = this->stack_; - #endif +#endif this->fc_ = boost::context::make_fcontext( stack, smx_context_usable_stack_size, smx_ctx_boost_wrapper); } else { - #if HAVE_BOOST_CONTEXTS == 1 +#if HAVE_BOOST_CONTEXTS == 1 this->fc_ = new boost::context::fcontext_t(); - #endif +#endif if (BoostContext::maestro_context_ == nullptr) BoostContext::maestro_context_ = this; } @@ -184,13 +181,9 @@ void BoostContext::resume() { SIMIX_context_set_current(this); #if HAVE_BOOST_CONTEXTS == 1 - boost::context::jump_fcontext( - maestro_context_->fc_, this->fc_, - (intptr_t) this); + boost::context::jump_fcontext(maestro_context_->fc_, this->fc_, (intptr_t) this); #else - boost::context::jump_fcontext( - &maestro_context_->fc_, this->fc_, - (intptr_t) this); + boost::context::jump_fcontext(&maestro_context_->fc_, this->fc_, (intptr_t) this); #endif } @@ -209,17 +202,14 @@ void BoostSerialContext::suspend() else { /* all processes were run, return to maestro */ XBT_DEBUG("No more process to run"); - next_context = static_cast( - maestro_context_); + next_context = static_cast(maestro_context_); } SIMIX_context_set_current((smx_context_t) next_context); - #if HAVE_BOOST_CONTEXTS == 1 - boost::context::jump_fcontext( - this->fc_, next_context->fc_, (intptr_t) next_context); - #else - boost::context::jump_fcontext( - &this->fc_, next_context->fc_, (intptr_t) next_context); - #endif +#if HAVE_BOOST_CONTEXTS == 1 + boost::context::jump_fcontext(this->fc_, next_context->fc_, (intptr_t) next_context); +#else + boost::context::jump_fcontext(&this->fc_, next_context->fc_, (intptr_t) next_context); +#endif } void BoostSerialContext::stop() @@ -234,7 +224,7 @@ void BoostSerialContext::stop() void BoostParallelContext::suspend() { - smx_actor_t next_work = (smx_actor_t) xbt_parmap_next(parmap_); + smx_actor_t next_work = static_cast(xbt_parmap_next(parmap_)); BoostParallelContext* next_context = nullptr; if (next_work != nullptr) { @@ -245,17 +235,14 @@ void BoostParallelContext::suspend() XBT_DEBUG("No more processes to run"); uintptr_t worker_id = (uintptr_t) xbt_os_thread_get_specific(worker_id_key_); - next_context = static_cast( - workers_context_[worker_id]); + next_context = static_cast(workers_context_[worker_id]); } - SIMIX_context_set_current((smx_context_t) next_context); + SIMIX_context_set_current(static_cast (next_context)); #if HAVE_BOOST_CONTEXTS == 1 - boost::context::jump_fcontext( - this->fc_, next_context->fc_, (intptr_t)next_context); + boost::context::jump_fcontext(this->fc_, next_context->fc_, (intptr_t)(next_context)); #else - boost::context::jump_fcontext( - &this->fc_, next_context->fc_, (intptr_t)next_context); + boost::context::jump_fcontext(&this->fc_, next_context->fc_, (intptr_t)(next_context)); #endif } @@ -270,17 +257,14 @@ void BoostParallelContext::resume() uintptr_t worker_id = __sync_fetch_and_add(&threads_working_, 1); xbt_os_thread_set_specific(worker_id_key_, (void*) worker_id); - BoostParallelContext* worker_context = - static_cast(SIMIX_context_self()); + BoostParallelContext* worker_context = static_cast(SIMIX_context_self()); workers_context_[worker_id] = worker_context; SIMIX_context_set_current(this); #if HAVE_BOOST_CONTEXTS == 1 - boost::context::jump_fcontext( - worker_context->fc_, this->fc_, (intptr_t) this); + boost::context::jump_fcontext(worker_context->fc_, this->fc_, (intptr_t) this); #else - boost::context::jump_fcontext( - &worker_context->fc_, this->fc_, (intptr_t) this); + boost::context::jump_fcontext(&worker_context->fc_, this->fc_, (intptr_t) this); #endif } diff --git a/src/kernel/context/ContextUnix.cpp b/src/kernel/context/ContextUnix.cpp index 226236e1b6..8c51f67a96 100644 --- a/src/kernel/context/ContextUnix.cpp +++ b/src/kernel/context/ContextUnix.cpp @@ -157,7 +157,7 @@ UContextFactory::~UContextFactory() void UContextFactory::run_all() { if (sysv_parallel) { - #if HAVE_THREAD_CONTEXTS +#if HAVE_THREAD_CONTEXTS sysv_threads_working = 0; // Parmap_apply ensures that every working thread get an index in the // process_to_run array (through an atomic fetch_and_add), @@ -177,19 +177,17 @@ void UContextFactory::run_all() context->resume(); }, simix_global->process_to_run); - #else +#else xbt_die("You asked for a parallel execution, but you don't have any threads."); - #endif +#endif } else { // Serial: if (xbt_dynar_is_empty(simix_global->process_to_run)) return; - smx_actor_t first_process = - xbt_dynar_get_as(simix_global->process_to_run, 0, smx_actor_t); + smx_actor_t first_process = xbt_dynar_get_as(simix_global->process_to_run, 0, smx_actor_t); sysv_process_index = 1; - SerialUContext* context = - static_cast(first_process->context); + SerialUContext* context = static_cast(first_process->context); context->resume(); } } @@ -275,8 +273,7 @@ void SerialUContext::suspend() XBT_DEBUG("Run next process"); next_context = (SerialUContext*) xbt_dynar_get_as( simix_global->process_to_run,i, smx_actor_t)->context; - } - else { + } else { /* all processes were run, return to maestro */ XBT_DEBUG("No more process to run"); next_context = (SerialUContext*) sysv_maestro_context; @@ -355,8 +352,7 @@ void ParallelUContext::suspend() // There is a next soul to embody (ie, a next process to resume) XBT_DEBUG("Run next process"); next_context = (ParallelUContext*) next_work->context; - } - else { + } else { // All processes were run, go to the barrier XBT_DEBUG("No more processes to run"); // Get back the identity of my body that was stored when starting -- 2.20.1