Browse Source

fix cppcheck issues

Olivier Aumage 8 years ago
parent
commit
2d9b6a7d2b
1 changed files with 10 additions and 5 deletions
  1. 10 5
      src/drivers/driver_common/driver_common.c

+ 10 - 5
src/drivers/driver_common/driver_common.c

@@ -342,7 +342,6 @@ static void _starpu_exponential_backoff(struct _starpu_worker *worker)
 struct starpu_task *_starpu_get_worker_task(struct _starpu_worker *worker, int workerid, unsigned memnode STARPU_ATTRIBUTE_UNUSED)
 {
 	struct starpu_task *task;
-	unsigned executing STARPU_ATTRIBUTE_UNUSED = 0;
 #if !defined(STARPU_SIMGRID)
 	unsigned keep_awake = 0;
 #endif
@@ -350,10 +349,12 @@ struct starpu_task *_starpu_get_worker_task(struct _starpu_worker *worker, int w
 	STARPU_PTHREAD_MUTEX_LOCK_SCHED(&worker->sched_mutex);
 	_starpu_worker_enter_sched_op(worker);
 	_starpu_worker_set_status_scheduling(workerid);
+#if !defined(STARPU_SIMGRID)
 	if ((worker->pipeline_length == 0 && worker->current_task)
 		|| (worker->pipeline_length != 0 && worker->ntasks))
 		/* This worker is executing something */
-		executing = 1;
+		keep_awake = 1;
+#endif
 
 	/*if the worker is already executing a task then */
 	if (worker->pipeline_length && (worker->ntasks == worker->pipeline_length || worker->pipeline_stuck))
@@ -370,14 +371,14 @@ struct starpu_task *_starpu_get_worker_task(struct _starpu_worker *worker, int w
 #if !defined(STARPU_SIMGRID)
 		if (worker->state_keep_awake)
 		{
-			keep_awake = worker->state_keep_awake;
+			keep_awake = 1;
 			worker->state_keep_awake = 0;
 		}
 #endif
 	}
 
 #if !defined(STARPU_SIMGRID)
-	if (task == NULL && !executing && !keep_awake)
+	if (task == NULL && !keep_awake)
 	{
 		/* Didn't get a task to run and none are running, go to sleep */
 
@@ -442,7 +443,9 @@ int _starpu_get_multi_worker_task(struct _starpu_worker *workers, struct starpu_
 	struct _starpu_job * j;
 	int is_parallel_task;
 	struct _starpu_combined_worker *combined_worker;
-	int executing STARPU_ATTRIBUTE_UNUSED = 0;
+#if !defined(STARPU_NON_BLOCKING_DRIVERS) && !defined(STARPU_SIMGRID)
+	int executing = 0;
+#endif
 	/*for each worker*/
 #ifndef STARPU_NON_BLOCKING_DRIVERS
 	/* This assumes only 1 worker */
@@ -454,10 +457,12 @@ int _starpu_get_multi_worker_task(struct _starpu_worker *workers, struct starpu_
 	for (i = 0; i < nworkers; i++)
 	{
 		unsigned keep_awake = 0;
+#if !defined(STARPU_NON_BLOCKING_DRIVERS) && !defined(STARPU_SIMGRID)
 		if ((workers[i].pipeline_length == 0 && workers[i].current_task)
 			|| (workers[i].pipeline_length != 0 && workers[i].ntasks))
 			/* At least this worker is executing something */
 			executing = 1;
+#endif
 		/*if the worker is already executing a task then */
 		if((workers[i].pipeline_length == 0 && workers[i].current_task)
 			|| (workers[i].pipeline_length != 0 &&