浏览代码

free data outside critical section

Samuel Thibault 10 年之前
父节点
当前提交
41cfdc75cd
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      src/core/sched_ctx.c

+ 1 - 1
src/core/sched_ctx.c

@@ -679,10 +679,10 @@ void starpu_sched_ctx_delete(unsigned sched_ctx_id)
 		_starpu_delete_sched_ctx(sched_ctx);
 
 	}
+	STARPU_PTHREAD_RWLOCK_UNLOCK(&changing_ctx_mutex[sched_ctx_id]);
 	/* workerids is malloc-ed in starpu_sched_ctx_get_workers_list, don't forget to free it when
 	   you don't use it anymore */
 	free(workerids);
-	STARPU_PTHREAD_RWLOCK_UNLOCK(&changing_ctx_mutex[sched_ctx_id]);
 	_starpu_relock_mutex_if_prev_locked();
 	return;
 }