@@ -301,6 +301,7 @@ int _starpu_cpu_driver_run_once(struct _starpu_worker *cpu_worker)
if (pending_task != NULL && cpu_worker->nb_buffers_transferred == cpu_worker->nb_buffers_totransfer)
{
int ret;
+ STARPU_RMB();
_STARPU_TRACE_END_PROGRESS(memnode);
j = _starpu_get_job_associated_to_task(pending_task);
@@ -825,6 +825,7 @@ int _starpu_cuda_driver_run_once(struct _starpu_worker_set *worker_set)
task = worker->task_transferring;
if (task && worker->nb_buffers_transferred == worker->nb_buffers_totransfer)
j = _starpu_get_job_associated_to_task(task);
@@ -927,6 +927,7 @@ static void _starpu_src_common_worker_internal_work(struct _starpu_worker_set *
/* We send all buffers to execute the task */
if (task != NULL && worker_set->workers[i].nb_buffers_transferred == worker_set->workers[i].nb_buffers_totransfer)
struct _starpu_job * j = _starpu_get_job_associated_to_task(task);
@@ -700,6 +700,7 @@ int _starpu_opencl_driver_run_once(struct _starpu_worker *worker)
idle_transfers++;