浏览代码

Allow datawizard/task_with_multiple_time_the_same_handle running on mic/scc

Samuel Thibault 9 年之前
父节点
当前提交
454cb67736
共有 1 个文件被更改,包括 9 次插入3 次删除
  1. 9 3
      tests/datawizard/task_with_multiple_time_the_same_handle.c

+ 9 - 3
tests/datawizard/task_with_multiple_time_the_same_handle.c

@@ -57,21 +57,22 @@ int main(int argc, char * argv[])
 
 
 	ret=starpu_init(NULL);
 	ret=starpu_init(NULL);
 	if (ret == -ENODEV) return STARPU_TEST_SKIPPED;
 	if (ret == -ENODEV) return STARPU_TEST_SKIPPED;
-	if (starpu_worker_get_count_by_type(STARPU_CPU_WORKER) == 0) return STARPU_TEST_SKIPPED;
 
 
 	starpu_variable_data_register(&handle,0,(uintptr_t)&value,sizeof(double));
 	starpu_variable_data_register(&handle,0,(uintptr_t)&value,sizeof(double));
 
 
 	for (i=0; i<2; i++)
 	for (i=0; i<2; i++)
 	{
 	{
-		starpu_task_insert(&sum_cl,
+		ret = starpu_task_insert(&sum_cl,
 		                   STARPU_RW, handle,
 		                   STARPU_RW, handle,
 		                   STARPU_R, handle,
 		                   STARPU_R, handle,
 		                   0);
 		                   0);
-		starpu_task_insert(&sum3_cl,
+		if (ret == -ENODEV) goto enodev;
+		ret = starpu_task_insert(&sum3_cl,
 		                   STARPU_R, handle,
 		                   STARPU_R, handle,
 		                   STARPU_R, handle,
 		                   STARPU_R, handle,
 		                   STARPU_RW, handle,
 		                   STARPU_RW, handle,
 		                   0);
 		                   0);
+		if (ret == -ENODEV) goto enodev;
 	}
 	}
 
 
 	starpu_task_wait_for_all();
 	starpu_task_wait_for_all();
@@ -84,4 +85,9 @@ int main(int argc, char * argv[])
 
 
 	starpu_shutdown();
 	starpu_shutdown();
 	return ret;
 	return ret;
+
+enodev:
+	starpu_data_unregister(handle);
+	starpu_shutdown();
+	return STARPU_TEST_SKIPPED;
 }
 }