Pārlūkot izejas kodu

Explicitly destroy spinlocks and mutexes after use

Samuel Thibault 13 gadi atpakaļ
vecāks
revīzija
057882d917
2 mainītis faili ar 2 papildinājumiem un 0 dzēšanām
  1. 1 0
      src/core/dependencies/tags.c
  2. 1 0
      src/datawizard/user_interactions.c

+ 1 - 0
src/core/dependencies/tags.c

@@ -106,6 +106,7 @@ static void _starpu_tag_free(void *_tag)
 #endif
 
 		_starpu_spin_unlock(&tag->lock);
+		_starpu_spin_destroy(&tag->lock);
 
 		free(tag);
 	}

+ 1 - 0
src/datawizard/user_interactions.c

@@ -282,6 +282,7 @@ int starpu_data_acquire(starpu_data_handle_t handle, enum starpu_access_mode mod
 		while (!wrapper.finished)
 			_STARPU_PTHREAD_COND_WAIT(&wrapper.cond, &wrapper.lock);
 		_STARPU_PTHREAD_MUTEX_UNLOCK(&wrapper.lock);
+		_STARPU_PTHREAD_MUTEX_DESTROY(&wrapper.lock);
 	}
 
 	/* At that moment, the caller holds a reference to the piece of data.