Bläddra i källkod

Watch for multiple unregistration

Samuel Thibault 13 år sedan
förälder
incheckning
1441066205
1 ändrade filer med 2 tillägg och 0 borttagningar
  1. 2 0
      src/datawizard/interfaces/data_interface.c

+ 2 - 0
src/datawizard/interfaces/data_interface.c

@@ -608,6 +608,7 @@ static void _starpu_data_unregister(starpu_data_handle_t handle, unsigned cohere
 
 void starpu_data_unregister(starpu_data_handle_t handle)
 {
+	STARPU_ASSERT_MSG(!handle->lazy_unregister, "data must not be unregistered twice");
 	_starpu_data_unregister(handle, 1);
 }
 
@@ -618,6 +619,7 @@ void starpu_data_unregister_no_coherency(starpu_data_handle_t handle)
 
 void starpu_data_unregister_submit(starpu_data_handle_t handle) {
 	_starpu_spin_lock(&handle->header_lock);
+	STARPU_ASSERT_MSG(!handle->lazy_unregister, "data must not be unregistered twice");
 	handle->lazy_unregister = 1;
 	_starpu_spin_unlock(&handle->header_lock);
 	_starpu_data_unregister(handle, 0);