소스 검색

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);
 		}
 	}
 }