Преглед изворни кода

protected flag clear as well

Olivier Aumage пре 8 година
родитељ
комит
f5ed375cf2
2 измењених фајлова са 4 додато и 0 уклоњено
  1. 2 0
      src/core/workers.c
  2. 2 0
      src/core/workers.h

+ 2 - 0
src/core/workers.c

@@ -1746,7 +1746,9 @@ unsigned starpu_worker_is_blocked_in_parallel(int workerid)
 		}
 		if (relax_own_observation_state)
 		{
+			STARPU_PTHREAD_MUTEX_LOCK_SCHED(&cur_worker->sched_mutex);
 			cur_worker->state_safe_for_observation = 0;
+			STARPU_PTHREAD_MUTEX_UNLOCK_SCHED(&cur_worker->sched_mutex);
 		}
 	}
 	unsigned ret = _starpu_config.workers[workerid].state_blocked_in_parallel;

+ 2 - 0
src/core/workers.h

@@ -927,7 +927,9 @@ static inline void _starpu_worker_lock(int workerid)
 		}
 		if (relax_own_observation_state)
 		{
+			STARPU_PTHREAD_MUTEX_LOCK_SCHED(&cur_worker->sched_mutex);
 			cur_worker->state_safe_for_observation = 0;
+			STARPU_PTHREAD_MUTEX_UNLOCK_SCHED(&cur_worker->sched_mutex);
 		}
 	}
 }